《Java程序設(shè)計(jì)案例教程(微課版)(第2版)》 課件 胡運(yùn)玲 項(xiàng)目1-4 迎新電子屏的制作- 空氣質(zhì)量分析-數(shù)組_第1頁(yè)
《Java程序設(shè)計(jì)案例教程(微課版)(第2版)》 課件 胡運(yùn)玲 項(xiàng)目1-4 迎新電子屏的制作- 空氣質(zhì)量分析-數(shù)組_第2頁(yè)
《Java程序設(shè)計(jì)案例教程(微課版)(第2版)》 課件 胡運(yùn)玲 項(xiàng)目1-4 迎新電子屏的制作- 空氣質(zhì)量分析-數(shù)組_第3頁(yè)
《Java程序設(shè)計(jì)案例教程(微課版)(第2版)》 課件 胡運(yùn)玲 項(xiàng)目1-4 迎新電子屏的制作- 空氣質(zhì)量分析-數(shù)組_第4頁(yè)
《Java程序設(shè)計(jì)案例教程(微課版)(第2版)》 課件 胡運(yùn)玲 項(xiàng)目1-4 迎新電子屏的制作- 空氣質(zhì)量分析-數(shù)組_第5頁(yè)
已閱讀5頁(yè),還剩320頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

項(xiàng)目1迎新電子屏的制作

——Java概述《Java程序設(shè)計(jì)案例教程(微課版)(第2版)》項(xiàng)目導(dǎo)入

借用Java編寫程序制作一個(gè)迎新電子屏,讓大家更好地認(rèn)識(shí)Java,為后面的學(xué)習(xí)打好基礎(chǔ)。學(xué)習(xí)目標(biāo)了解Java的相關(guān)知識(shí)掌握J(rèn)ava開(kāi)發(fā)環(huán)境的搭建掌握主流集成開(kāi)發(fā)環(huán)境的安裝與使用掌握J(rèn)ava程序的編寫和運(yùn)行步驟培養(yǎng)嚴(yán)謹(jǐn)細(xì)致的工匠精神目錄CONTENTS任務(wù)1.1了解Java的發(fā)展任務(wù)1.2Java開(kāi)發(fā)環(huán)境的搭建任務(wù)1.3編寫第一個(gè)Java程序任務(wù)1.4掌握集成開(kāi)發(fā)環(huán)境的使用新課導(dǎo)入Java是一種面向?qū)ο蟮木幊陶Z(yǔ)言,以其嚴(yán)謹(jǐn)?shù)慕Y(jié)構(gòu)、簡(jiǎn)潔的語(yǔ)法和強(qiáng)大的功能,備受計(jì)算機(jī)軟件開(kāi)發(fā)人員的喜愛(ài)。Java作為面向?qū)ο缶幊陶Z(yǔ)言的代表,極好地實(shí)踐了面向?qū)ο罄碚摚试S程序員以優(yōu)雅的思維方式進(jìn)行復(fù)雜的編程,在軟件開(kāi)發(fā)、計(jì)算機(jī)網(wǎng)絡(luò)、移動(dòng)通信、游戲設(shè)計(jì)和大數(shù)據(jù)等領(lǐng)域都有廣泛的應(yīng)用。新課導(dǎo)入

本章將針對(duì)Java的相關(guān)知識(shí)、Java開(kāi)發(fā)環(huán)境的搭建、Java程序的編寫和運(yùn)行以及Eclipse開(kāi)發(fā)工具的安裝與使用等內(nèi)容進(jìn)行介紹。1.1Java的發(fā)展

計(jì)算機(jī)系統(tǒng)由硬件和軟件兩部分組成,硬件是一些物理組件的集合,軟件是一些數(shù)據(jù)和指令的集合。計(jì)算機(jī)硬件的性能特點(diǎn)幾乎都是通過(guò)計(jì)算機(jī)軟件體現(xiàn)出來(lái)的。計(jì)算機(jī)軟件由程序、數(shù)據(jù)和文檔3部分組成。其中,程序是軟件的核心。在我們編寫程序之前,首先需要選擇一種計(jì)算機(jī)語(yǔ)言。

計(jì)算機(jī)語(yǔ)言(computerlanguage)是用于人與計(jì)算機(jī)通信的語(yǔ)言,它主要由一些指令組成,這些指令包括數(shù)字、符號(hào)和語(yǔ)法等內(nèi)容。程序員可以通過(guò)這些指令來(lái)指揮計(jì)算機(jī)進(jìn)行各種工作。計(jì)算機(jī)語(yǔ)言的主要功能是實(shí)現(xiàn)人與計(jì)算機(jī)的交互。

計(jì)算機(jī)語(yǔ)言的發(fā)展,也是伴隨著計(jì)算機(jī)硬件和軟件的發(fā)展進(jìn)行的。到目前為止,計(jì)算機(jī)語(yǔ)言的發(fā)展經(jīng)歷了3個(gè)階段,即機(jī)器語(yǔ)言、匯編語(yǔ)言和高級(jí)語(yǔ)言,這也是計(jì)算機(jī)語(yǔ)言常見(jiàn)的3種分類。1.1.1計(jì)算機(jī)語(yǔ)言的發(fā)展史1.機(jī)器語(yǔ)言

機(jī)器語(yǔ)言是使用二進(jìn)制代碼表示指令的語(yǔ)言,它是計(jì)算機(jī)硬件系統(tǒng)可以直接識(shí)別,并能夠真正理解和執(zhí)行的唯一語(yǔ)言。

機(jī)器語(yǔ)言的優(yōu)點(diǎn)是不需要編譯,運(yùn)行效率高、速度快;缺點(diǎn)是難讀、難懂、難記,不利于開(kāi)發(fā)人員使用。

機(jī)器語(yǔ)言也稱為低級(jí)語(yǔ)言或者第一代語(yǔ)言。1.1.1計(jì)算機(jī)語(yǔ)言的發(fā)展史2.匯編語(yǔ)言

匯編語(yǔ)言是一種面向微處理器、微控制器等編程器件的計(jì)算機(jī)語(yǔ)言,它使用一些簡(jiǎn)單的字母和單詞表示指令。機(jī)器不同,匯編語(yǔ)言指令對(duì)應(yīng)的機(jī)器語(yǔ)言指令集也不同。

匯編語(yǔ)言的優(yōu)點(diǎn)是機(jī)器相關(guān)性強(qiáng),運(yùn)行效率較高;缺點(diǎn)是可讀性差,移植性差,應(yīng)用范圍較窄。

匯編語(yǔ)言也稱為中級(jí)語(yǔ)言或者第二代語(yǔ)言。1.1.1計(jì)算機(jī)語(yǔ)言的發(fā)展史1.1.1計(jì)算機(jī)語(yǔ)言的發(fā)展史3.高級(jí)語(yǔ)言

高級(jí)語(yǔ)言比較接近于人類的自然語(yǔ)言,它與機(jī)器情況無(wú)關(guān),擁有自身特定的符號(hào)和語(yǔ)法規(guī)范。程序員通過(guò)這些符號(hào)和語(yǔ)法規(guī)范來(lái)描述算法,編寫程序,指揮計(jì)算機(jī)硬件工作。

高級(jí)語(yǔ)言數(shù)量繁多,可以分為以C語(yǔ)言為代表的面向過(guò)程的語(yǔ)言和以Java為代表的面向?qū)ο蟮恼Z(yǔ)言。

高級(jí)語(yǔ)言的優(yōu)點(diǎn)是可讀性強(qiáng),易于學(xué)習(xí),語(yǔ)法規(guī)范嚴(yán)謹(jǐn),算法描述完整,功能較強(qiáng);缺點(diǎn)是程序需要編譯,執(zhí)行速度相對(duì)較慢。Java是由Sun公司推出的一種面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言。20世紀(jì)90年代,電子產(chǎn)品發(fā)展迅速,提高電子產(chǎn)品的智能化水平成為各個(gè)公司關(guān)注的焦點(diǎn)。為了搶占市場(chǎng)先機(jī),Sun公司成立了以詹姆斯·高斯林(JamesGosling)為首的名為格林(Green)的項(xiàng)目小組,致力于研發(fā)家電產(chǎn)品上的嵌入式應(yīng)用新技術(shù),最終于1991年開(kāi)發(fā)了一種稱為Oak的面向?qū)ο笳Z(yǔ)言,在1995年將該語(yǔ)言更名為Java。1996年1月,Sun公司發(fā)布了Java1.0,它包含兩個(gè)部分,Java運(yùn)行環(huán)境(JavaRuntimeEnvironment,JRE)和Java開(kāi)發(fā)工具包(JavaDevelopmentKit,JDK)。1.1.2Java的發(fā)展史1.1.2Java的發(fā)展史1998年12月,Sun公司發(fā)布了Java發(fā)展史上一個(gè)重要的JDK版本——JDK1.2,并開(kāi)始使用“Java2”這一名稱。2009年,Sun公司被Oracle(甲骨文)公司收購(gòu),但是Java及相關(guān)平臺(tái)工具仍然作為其主要產(chǎn)品被不斷完善和推廣。2017年9月,Oracle公司發(fā)布了JDK1.9,并同時(shí)宣布以后將JDK的更新頻率改為每半年發(fā)布一個(gè)新版本。1.簡(jiǎn)單易學(xué)Java是一種相對(duì)簡(jiǎn)單的編程語(yǔ)言,是在C和C++語(yǔ)言的基礎(chǔ)上創(chuàng)建的。它借鑒了C和C++語(yǔ)言的很多內(nèi)容,但是將C和C++語(yǔ)言中難以理解、容易混淆和容易產(chǎn)生二義性的內(nèi)容(包括多繼承、指針等)去掉了。這樣使Java更加簡(jiǎn)潔,方便開(kāi)發(fā)人員學(xué)習(xí)、掌握。1.1.3Java的主要特點(diǎn)2.解釋型Java是一種解釋執(zhí)行類型的編程語(yǔ)言。Java源程序編譯之后不會(huì)生成可直接執(zhí)行的機(jī)器語(yǔ)言指令,而是生成一種字節(jié)碼(byte-code)文件,然后由Java虛擬機(jī)(JavaVirtualMachine,JVM)解釋執(zhí)行。

相對(duì)于編譯型語(yǔ)言,作為解釋型語(yǔ)言的Java的運(yùn)行速度慢,但是它可以在任何搭載了Java解釋程序和運(yùn)行系統(tǒng)(run-timesystem)的系統(tǒng)上運(yùn)行,從而實(shí)現(xiàn)跨平臺(tái)。1.1.3Java的主要特點(diǎn)3.面向?qū)ο?/p>

與以C語(yǔ)言為代表的面向過(guò)程編程語(yǔ)言不同,Java是一種面向?qū)ο蟮木幊陶Z(yǔ)言。面向?qū)ο蠹仁且环N思想,也是一種模式,它還是軟件行業(yè)的一次“技術(shù)革命”,大大提升了程序員的開(kāi)發(fā)能力。

在面向?qū)ο蟮南到y(tǒng)中,以對(duì)象為中心,以消息為驅(qū)動(dòng)。面向?qū)ο笫沟肑ava能夠自動(dòng)處理對(duì)象的引用,用戶不必糾結(jié)于存儲(chǔ)管理問(wèn)題,可以把更多的時(shí)間和精力用在研發(fā)上,提高開(kāi)發(fā)效率和質(zhì)量。1.1.3Java的主要特點(diǎn)4.平臺(tái)無(wú)關(guān)性Java編寫的程序既可以在Windows操作系統(tǒng)上運(yùn)行,也可以在Linux等操作系統(tǒng)上運(yùn)行。這是因?yàn)镴ava程序經(jīng)過(guò)編譯后生成的字節(jié)碼文件是運(yùn)行在Java虛擬機(jī)上的,我們只需要針對(duì)不同的操作系統(tǒng)安裝對(duì)應(yīng)的虛擬機(jī)即可。1.1.3Java的主要特點(diǎn)5.安全穩(wěn)健Java摒棄了指針的概念,這樣就可以杜絕內(nèi)存的非法訪問(wèn)。Java的異常處理機(jī)制可以使編寫的程序更加健壯。另外,Java的垃圾回收機(jī)制可以在空閑時(shí)間不定時(shí)地動(dòng)態(tài)回收無(wú)任何引用的對(duì)象所占據(jù)的內(nèi)存空間。這些措施使Java成為目前世界上最安全、穩(wěn)健的程序設(shè)計(jì)語(yǔ)言之一。1.1.3Java的主要特點(diǎn)6.多線程

線程包含在進(jìn)程之中,是操作系統(tǒng)能夠進(jìn)行運(yùn)算和調(diào)度的最小單位。Java提供了Thread類和Runnable接口,擁有多線程處理能力,可以在同一時(shí)間處理不同的任務(wù),增強(qiáng)了交互性和實(shí)時(shí)性。1.1.3Java的主要特點(diǎn)

從嚴(yán)格意義上講,Java不僅是指一種語(yǔ)言,還包括完整的開(kāi)發(fā)Java程序的平臺(tái)環(huán)境。該環(huán)境提供了開(kāi)發(fā)與運(yùn)行Java軟件的編譯器等開(kāi)發(fā)工具、軟件庫(kù)及Java虛擬機(jī)等。Java平臺(tái)有3個(gè)版本,分別是適用于桌面系統(tǒng)的標(biāo)準(zhǔn)版(JavaSE)、適用于創(chuàng)建服務(wù)器應(yīng)用程序和服務(wù)的企業(yè)版(JavaEE),以及適用于小型設(shè)備和智能卡的微型版(JavaME)。針對(duì)不同的市場(chǎng)和服務(wù),軟件開(kāi)發(fā)人員、服務(wù)提供商和設(shè)備生產(chǎn)商可以做不同的選擇。1.1.4Java體系分類1.標(biāo)準(zhǔn)版Java標(biāo)準(zhǔn)版(JavaStandardEdition,JavaSE)是Java平臺(tái)標(biāo)準(zhǔn)版的簡(jiǎn)稱,它是3個(gè)平臺(tái)的核心和基礎(chǔ),可以用來(lái)開(kāi)發(fā)和部署桌面、服務(wù)器以及嵌入式設(shè)備和實(shí)時(shí)環(huán)境中的Java應(yīng)用程序。JavaSE主要包括JDK、JRE,以及支持Java的核心類庫(kù),如UI、集合、異常、線程、I/O、數(shù)據(jù)庫(kù)編程、網(wǎng)絡(luò)編程等。1.1.4Java體系分類2.企業(yè)版Java企業(yè)版(JavaEnterpriseEdition,JavaEE)是為了解決企業(yè)級(jí)應(yīng)用程序的開(kāi)發(fā)、部署和管理等復(fù)雜問(wèn)題而設(shè)置的。JavaEE在保留了JavaSE特性的同時(shí),還提供了對(duì)其他技術(shù)的支持,包括企業(yè)級(jí)JavaBean(EnterpriseJavaBean,EJB)、JavaServlet、Java服務(wù)器頁(yè)面(JavaServerPages,JSP)和可擴(kuò)展標(biāo)記語(yǔ)言(ExtensibleMarkupLanguage,XML)等。1.1.4Java體系分類1.1.4Java體系分類3.微型版Java微型版(JavaMicroEdition,JavaME)是為機(jī)頂盒、移動(dòng)電話和個(gè)人數(shù)字助理(PersonalDigitalAssistant,PDA)之類的嵌入式消費(fèi)電子設(shè)備提供的Java平臺(tái),包括虛擬機(jī)和一系列標(biāo)準(zhǔn)化的Java應(yīng)用程序接口(ApplicationProgramInterface,API)。所有的嵌入式裝置大體上分為兩種:一種是運(yùn)算能力有限,電力供應(yīng)也有限的嵌入式裝置(如PDA、手機(jī));另外一種則是運(yùn)算能力相對(duì)較強(qiáng),并且在電力供應(yīng)上相對(duì)充足的嵌入式裝置(如冷風(fēng)機(jī)、電冰箱、機(jī)頂盒)。JavaME有自己的類庫(kù),還包括用戶界面、安全模型、內(nèi)置的網(wǎng)絡(luò)協(xié)議以及可以動(dòng)態(tài)下載的聯(lián)網(wǎng)和離線應(yīng)用程序。

借用Java可以編寫安卓(Android)手機(jī)上的應(yīng)用程序(Application,App);可以實(shí)現(xiàn)大型網(wǎng)站的后端開(kāi)發(fā),如電商交易平臺(tái)的后端開(kāi)發(fā);可以開(kāi)發(fā)企業(yè)級(jí)的大型應(yīng)用,如大型企業(yè)管理系統(tǒng)等。另外,Java技術(shù)在通信、金融等領(lǐng)域應(yīng)用廣泛。不僅如此,Java在大數(shù)據(jù)開(kāi)發(fā)方面也有很大的優(yōu)勢(shì),目前流行的很多大數(shù)據(jù)框架是用Java編寫的。Java還是開(kāi)發(fā)人工智能應(yīng)用程序的絕佳語(yǔ)言。任務(wù)1.1了解Java的發(fā)展

九層之臺(tái),始于壘土。無(wú)論做什么事情,夯實(shí)基礎(chǔ)至關(guān)重要,沒(méi)有扎實(shí)的基礎(chǔ)知識(shí)作為儲(chǔ)備,就難以在所在領(lǐng)域進(jìn)行深入研究。通過(guò)本書的學(xué)習(xí),讀者可以掌握J(rèn)ava相關(guān)技術(shù),提高編程技能,為進(jìn)一步發(fā)展打好基礎(chǔ)。任務(wù)1.1了解Java的發(fā)展【任務(wù)描述】

閱讀下面的Java程序,認(rèn)識(shí)其結(jié)構(gòu),分析其功能。

【任務(wù)分析】

(1)閱讀Java程序,看它由哪些元素構(gòu)成。

(2)分析其實(shí)現(xiàn)的功能?!救蝿?wù)實(shí)踐1-1】

初識(shí)Java程序publicclass任務(wù)實(shí)踐1_1{publicstaticvoidmain(String[]args){System.out.println("歡迎新同學(xué)!");}}【任務(wù)實(shí)現(xiàn)】【任務(wù)實(shí)踐1-1】

初識(shí)Java程序

計(jì)算機(jī)只能識(shí)別二進(jìn)制數(shù)據(jù),并不能直接執(zhí)行上面的Java源文件。為此,我們需要一個(gè)“翻譯官”,將上面的Java源文件“翻譯”成計(jì)算機(jī)可以識(shí)別的格式。接下來(lái),我們將介紹這一“翻譯官”—JDK的安裝與配置?!救蝿?wù)實(shí)踐1-1】

初識(shí)Java程序目錄CONTENTS任務(wù)1.1了解Java的發(fā)展任務(wù)1.2Java開(kāi)發(fā)環(huán)境的搭建任務(wù)1.3編寫第一個(gè)Java程序任務(wù)1.4掌握集成開(kāi)發(fā)環(huán)境的使用JDK是Java開(kāi)發(fā)工具包,它包含了Java的編譯和運(yùn)行工具、Java文檔生成工具、Java文件打包工具等。1995年,Sun公司發(fā)布了JDK1.0,之后又陸續(xù)推出了各種升級(jí)版本,包括JDK1.1、JDK1.2等。目前,JDK1.6/Java6.0、JDK1.7/Java7.0、JDK1.8/Java8.0的應(yīng)用都比較廣泛。JRE是Java運(yùn)行環(huán)境,負(fù)責(zé)運(yùn)行Java程序。JRE只包含Java運(yùn)行工具,不包含Java編譯工具。需要特別提到的是,JDK中自帶了JRE工具。因此,我們只安裝JDK即可,不需要單獨(dú)安裝JRE,這樣可以簡(jiǎn)化開(kāi)發(fā)環(huán)境搭建步驟,方便使用。任務(wù)1.2Java開(kāi)發(fā)環(huán)境的搭建

讀者可以從Oracle官方網(wǎng)站下載JDK安裝文件,根據(jù)自己計(jì)算機(jī)的操作系統(tǒng)版本選取JDK版本。各種版本的JDK的安裝和配置步驟都是相似的,下面以64位Windows10操作系統(tǒng)和JDK1.8為例,演示JDK的下載與安裝步驟。1.2.1JDK的下載與安裝1.下載JDK

下載適合自己計(jì)算機(jī)環(huán)境的JDK版本的安裝文件,本案例選取的是JDK

1.8,安裝文件為“jdk-8u40-windows-x64.exe”。雙擊安裝文件,進(jìn)入JDK安裝界面,如圖1-1所示。圖1-1JDK安裝界面1.2.1JDK的下載與安裝2.JDK的安裝JDK的安裝過(guò)程很簡(jiǎn)單,如果使用默認(rèn)安裝路徑,只需要單擊每個(gè)界面的【下一步】按鈕即可。(1)單擊【下一步】按鈕,進(jìn)入JDK定制安裝界面,如圖1-2所示。圖1-2JDK定制安裝界面1.2.1JDK的下載與安裝(2)單擊【下一步】按鈕,進(jìn)入JDK安裝進(jìn)度界面,如圖1-3所示。圖1-3JDK安裝進(jìn)度界面1.2.1JDK的下載與安裝(3)JDK的安裝需要一段時(shí)間,然后會(huì)進(jìn)入JDK安裝完成界面,如圖1-4所示,單擊【關(guān)閉】按鈕即可完成JDK的安裝。圖1-4JDK安裝完成界面1.2.1JDK的下載與安裝3.JDK安裝架構(gòu)簡(jiǎn)介JDK安裝完成之后,打開(kāi)安裝路徑,會(huì)看到安裝好的jdk和jre文件夾。如果選擇默認(rèn)安裝路徑,打開(kāi)C:\ProgramFiles\Java,即可看到這兩個(gè)文件夾,文件夾名稱中具體的版本數(shù)字與所下載的JDK版本對(duì)應(yīng)。1.2.1JDK的下載與安裝Java開(kāi)發(fā)環(huán)境的核心工具包是JDK,下面對(duì)jdk文件夾內(nèi)容進(jìn)行簡(jiǎn)要介紹。(1)bin文件夾:存放一些可執(zhí)行程序,分別實(shí)現(xiàn)不同的功能,包括javac.exe(Java編譯程序)、java.exe(Java運(yùn)行程序)和javadoc.exe(Java文檔生成程序)等。(2)db文件夾:db即database的縮寫,該文件夾是一個(gè)存放Java數(shù)據(jù)庫(kù)管理系統(tǒng)的文件夾。在學(xué)習(xí)Java數(shù)據(jù)庫(kù)互連(JavaDatabaseConnectivity,JDBC)相關(guān)知識(shí)的時(shí)候,不需要單獨(dú)安裝數(shù)據(jù)庫(kù)管理系統(tǒng),直接使用數(shù)據(jù)庫(kù)系統(tǒng)即可。1.2.1JDK的下載與安裝1.2.1JDK的下載與安裝(3)include文件夾:包含了C語(yǔ)言的一些頭文件,因?yàn)镴DK是通過(guò)C和C++語(yǔ)言實(shí)現(xiàn)的,因此啟動(dòng)時(shí)需要引入這些頭文件。(4)jre文件夾:即Java運(yùn)行環(huán)境的根目錄,包括Java虛擬機(jī)以及Java程序運(yùn)行時(shí)的各種類庫(kù)等。

(5)lib文件夾:lib即library的縮寫,該文件夾是Java類庫(kù)文件夾。1.2.2環(huán)境變量的配置JDK安裝結(jié)束之后,需要手動(dòng)對(duì)Path這一系統(tǒng)環(huán)境變量進(jìn)行配置,才可以對(duì)Java程序進(jìn)行編譯。1.2.2環(huán)境變量的配置1.Path系統(tǒng)環(huán)境變量配置(1)用鼠標(biāo)右鍵單擊桌面上的【此電腦】,然后依次單擊【屬性】→【高級(jí)系統(tǒng)設(shè)置】→【環(huán)境變量】按鈕,在彈出的“環(huán)境變量”對(duì)話框中選中【Path】系統(tǒng)環(huán)境變量,如圖1-4所示。圖1-4“環(huán)境變量”對(duì)話框(2)單擊【編輯】按鈕,進(jìn)入“編輯環(huán)境變量”對(duì)話框,單擊【新建】按鈕,在下方添加前面JDK安裝的bin文件夾路徑C:\ProgramFiles\Java\jdk1.8.0_40\bin,如圖1-5所示,然后單擊【確定】按鈕。圖1-5“編輯環(huán)境變量”對(duì)話框1.2.2環(huán)境變量的配置注意:Path是一個(gè)系統(tǒng)環(huán)境變量,主要用來(lái)保存若干路徑,各個(gè)路徑之間用半

角分號(hào)間隔。當(dāng)我們?cè)凇懊钐崾痉贝翱谥羞\(yùn)行某個(gè)可執(zhí)行文件時(shí),系統(tǒng)首先會(huì)在當(dāng)前目錄查找該文件;如果存在即可執(zhí)行,如果不存在,則會(huì)在Path系統(tǒng)環(huán)境變量中已定義的路徑下繼續(xù)尋找;如果找到即可執(zhí)行,如果還沒(méi)有找到,則會(huì)報(bào)錯(cuò)。我們?cè)赑ath系統(tǒng)環(huán)境變量中添加Java的bin文件夾信息,就是為了后期可以在“命令提示符”窗口中使用Java命令。1.2.2環(huán)境變量的配置1.2.3安裝環(huán)境的測(cè)試

打開(kāi)“命令提示符”窗口,在窗口中輸入命令“java-version”,按【Enter】鍵,會(huì)顯示當(dāng)前安裝的JDK版本信息,如圖1-6所示。圖1-6“命令提示符”窗口1.2.3安裝環(huán)境的測(cè)試

讀者可以自行比較顯示的版本信息與前期安裝的版本信息是否一致。如果沒(méi)有問(wèn)題,也可以嘗試執(zhí)行bin文件夾下的其他命令,看看效果。讀者現(xiàn)在可能對(duì)這些命令的功能還不是很了解,但是只要能夠執(zhí)行命令,并且沒(méi)有提示錯(cuò)誤信息,就證明前期開(kāi)發(fā)環(huán)境的搭建與配置工作已經(jīng)順利完成。目錄CONTENTS任務(wù)1.1了解Java的發(fā)展任務(wù)1.2Java開(kāi)發(fā)環(huán)境的搭建任務(wù)1.3編寫第一個(gè)Java程序任務(wù)1.4掌握集成開(kāi)發(fā)環(huán)境的使用

在Java開(kāi)發(fā)環(huán)境搭建并配置好之后,我們可以編寫一個(gè)簡(jiǎn)單的Java程序,以此明確Java源程序的編寫、編譯和解釋執(zhí)行的流程。任務(wù)1.3編寫第一個(gè)Java程序1.3.1Java源程序的編寫

由于JDK沒(méi)有提供Java編輯器,因此讀者可使用記事本、Notepad++、UltraEdit等編輯器或開(kāi)發(fā)工具進(jìn)行源程序的編輯。下面以Windows操作系統(tǒng)自帶的記事本為例,編寫第一個(gè)源程序。

首先,新建一個(gè)文本文件,在文件中輸入以下內(nèi)容:

然后將該文件另存為HelloWorld.java(注意,擴(kuò)展名“.java”中的字母全部為小寫字母)。publicclassHelloWorld{publicstaticvoidmain(String[]args){System.out.println("Hello,World!!!"); }}1.3.1Java源程序的編寫

注意:上述程序的標(biāo)點(diǎn)符號(hào)全部為半角狀態(tài),單詞字母的大小寫按照程序書寫,在后面的學(xué)習(xí)過(guò)程中,本書將會(huì)對(duì)其中的關(guān)鍵字和書寫規(guī)范進(jìn)行詳細(xì)的講解。1.3.2Java程序的編譯打開(kāi)“命令提示符”窗口,切換到HelloWorld.java文件所在的目錄,如圖1-7所示。圖1-7在命令行提示符下切換當(dāng)前目錄到HelloWorld.java所在的目錄1.3.2Java程序的編譯輸入“javacHelloWorld.java”命令,按【Enter】鍵,執(zhí)行編譯命令界面如圖1-8所示。圖1-8執(zhí)行編譯命令界面1.3.2Java程序的編譯

如果運(yùn)行結(jié)果如圖1-8所示,沒(méi)有提示任何錯(cuò)誤信息,那么讀者可以到保存HelloWorld.java的目錄查看生成的HelloWorld.class文件,如圖1-9所示。圖1-9查看HelloWorld.class文件1.3.2Java程序的編譯HelloWorld.class就是HelloWorld.java編譯之后的文件,即字節(jié)碼文件,這兩個(gè)文件的名稱完全相同。

注意:如果編譯過(guò)程提示錯(cuò)誤信息,一般都是指代碼輸入錯(cuò)誤,注意單詞拼寫和字母大小寫的問(wèn)題。1.3.3Java程序的解釋執(zhí)行

編譯成功之后,繼續(xù)在“命令提示符”窗口中輸入“javaHelloWorld”,按【Enter】鍵,就可以看到執(zhí)行結(jié)果,顯示“Hello,World!!!”,如圖1-10所示。圖1-10顯示執(zhí)行結(jié)果

注意:執(zhí)行編譯命令“javacHelloWorld.java”的時(shí)候,文件名是需要帶擴(kuò)展名“.java”的;運(yùn)行命令“javaHelloWorld”的時(shí)候,文件名是不需要帶擴(kuò)展名“.class”的。1.3.3Java程序的解釋執(zhí)行1.3.4Java程序的編寫規(guī)則Java程序在編寫時(shí)要符合Java程序的語(yǔ)法規(guī)范和編寫規(guī)則,在項(xiàng)目2中會(huì)詳細(xì)介紹標(biāo)識(shí)符等語(yǔ)法規(guī)范。

(1)Java源文件

Java源文件以“.java”為擴(kuò)展名,源文件的基本組成部分是類(class),如上面文件中的HelloWorld。一個(gè)文件中可以包含多個(gè)類,但最多只能有一個(gè)用public修飾的類,文件名要與用public修飾的類名相同。(2)方法

一個(gè)Java類中可以包含多個(gè)方法,其中,Java程序的執(zhí)行入口是main()方法,它有固定的格式。

publicstaticvoidmain(String[]args){…}(3)Java語(yǔ)法規(guī)范

Java語(yǔ)言嚴(yán)格區(qū)分大小寫,比如“String”與“string”是不同的。Java語(yǔ)句以英文半角輸入法下的分號(hào)“;”作為結(jié)束標(biāo)志。1.3.4Java程序的編寫規(guī)則

(4)Java注釋

為了確保系統(tǒng)源程序的可讀性,最大限度地提高團(tuán)隊(duì)開(kāi)發(fā)的合作效率,同時(shí)為了增強(qiáng)系統(tǒng)的可維護(hù)性,Java編程人員應(yīng)編寫簡(jiǎn)單、明了、含義準(zhǔn)確的注釋。Java的注釋標(biāo)記有以下3種。

(1)//表示單行注釋。

(2)/*……*/表示多行注釋。

(3)/**……*/表示文檔注釋,可注釋若干行,并寫入java文檔注釋。1.3.4Java程序的編寫規(guī)則(5)編程風(fēng)格

為了增強(qiáng)程序的可讀性和可維護(hù)性,一個(gè)優(yōu)秀的Java程序員還應(yīng)該遵循一定的編程風(fēng)格。(1)縮進(jìn):縮進(jìn)應(yīng)該是每行4個(gè)空格,通常按一次Tab鍵表示一次縮進(jìn)。(2)使用“{}”表示代碼塊:用“{}”括起來(lái)的代碼,稱為一個(gè)代碼塊。多個(gè)代碼塊之間可以嵌套。在嵌套時(shí),同一層次中的代碼,需要垂直對(duì)齊;內(nèi)層的代碼,需要和外層的代碼有一定的縮進(jìn)。(3)空格:在對(duì)兩個(gè)以上的關(guān)鍵字、變量、常量進(jìn)行操作時(shí),它們之間的操作符之前、之后或者前后均要加空格。(4)一行只寫一條語(yǔ)句,不建議把多個(gè)短語(yǔ)句寫在一行中。1.3.4Java程序的編寫規(guī)則【任務(wù)描述】

很多工作單位目前都實(shí)行打卡考勤制度來(lái)統(tǒng)計(jì)每個(gè)員工的上下班信息,試編寫程序顯示員工的個(gè)人打卡信息。

【任務(wù)分析】

利用前面介紹過(guò)的System.out.println()方法,將員工的個(gè)人打卡信息顯示出來(lái)。【任務(wù)實(shí)踐1-2】

顯示個(gè)人打卡信息publicclass任務(wù)實(shí)踐1_2{publicstaticvoidmain(String[]args){Stringid="137";//設(shè)置工號(hào)Stringname="劉雙莉";//設(shè)置姓名System.out.println("早上好!您已打卡成功!");System.out.println("工號(hào):"+id);System.out.println("姓名:"+name);}}【任務(wù)實(shí)現(xiàn)】【任務(wù)實(shí)踐1-2】

顯示個(gè)人打卡信息【實(shí)現(xiàn)結(jié)果】早上好!您已打卡成功!工號(hào):137姓名:劉雙莉目錄CONTENTS任務(wù)1.1了解Java的發(fā)展任務(wù)1.2Java開(kāi)發(fā)環(huán)境的搭建任務(wù)1.3編寫第一個(gè)Java程序任務(wù)1.4掌握集成開(kāi)發(fā)環(huán)境的使用

前文介紹了Java程序的編寫、編譯和解釋執(zhí)行過(guò)程,讀者應(yīng)該對(duì)Java程序的開(kāi)發(fā)流程有了初步的認(rèn)識(shí)。為了提高程序開(kāi)發(fā)效率,程序員一般都會(huì)選擇專業(yè)性更強(qiáng)的Java集成開(kāi)發(fā)工具。任務(wù)1.4掌握集成開(kāi)發(fā)環(huán)境的使用Eclipse是由IBM公司開(kāi)發(fā)的開(kāi)源及跨平臺(tái)的自由集成開(kāi)發(fā)環(huán)境(IntegratedDevelopmentEnvironment,IDE)。Eclipse最初基于Java程序開(kāi)發(fā),后來(lái)通過(guò)安裝不同的插件也可以支持其他語(yǔ)言(包括C/C++、Python、PHP、Android等)的開(kāi)發(fā)。因此,Eclipse可以滿足擁有不同計(jì)算機(jī)編程語(yǔ)言背景的程序員的開(kāi)發(fā)需求。任務(wù)1.4掌握集成開(kāi)發(fā)環(huán)境的使用Eclipse擁有強(qiáng)大的代碼編輯能力,可以根據(jù)要求自動(dòng)生成若干代碼框架,提高編程效率;可以自動(dòng)進(jìn)行語(yǔ)法修正,向開(kāi)發(fā)人員提供錯(cuò)誤解決方案;還可以編譯和運(yùn)行程序。根據(jù)不同的需求,Eclipse可以安裝不同的插件。Eclipse自身就附帶了一個(gè)包括JDK在內(nèi)的標(biāo)準(zhǔn)插件集,方便使用。當(dāng)然,前面讀者自行安裝的JDK也可以在Eclipse中進(jìn)行設(shè)置和使用。任務(wù)1.4掌握集成開(kāi)發(fā)環(huán)境的使用1.4.1Eclipse的下載與安裝Eclipse針對(duì)不同的用戶需求和操作系統(tǒng),提供了種類豐富的版本,我們只需要選取適合的版本進(jìn)行下載即可。目前Eclipse大多是64位解壓即可使用的版本,讀者可以登錄Eclipse官網(wǎng)下載。將下載好的zip壓縮文件包解壓到指定目錄,雙擊eclipse.exe文件就可以使用了。1.4.2在Eclipse下新建Java項(xiàng)目圖1-11工作站設(shè)置對(duì)話框

我們?nèi)匀灰郧懊娴腍elloWorld程序?yàn)槔?,介紹使用Eclipse創(chuàng)建Java項(xiàng)目的過(guò)程。

(1)Eclipse的啟動(dòng)及工作站初始設(shè)置

雙擊eclipse.exe文件,啟動(dòng)Eclipse。第一次啟動(dòng)Eclipse之后,一般會(huì)彈出工作站設(shè)置(WorkspaceLauncher)對(duì)話框,要求使用者對(duì)工作站路徑進(jìn)行設(shè)置,如圖1-11所示。1.4.2在Eclipse下新建Java項(xiàng)目Eclipse的工作站是用來(lái)保存Java項(xiàng)目的,可以根據(jù)個(gè)人情況選取合適的路徑。工作站路徑設(shè)置結(jié)束之后,可以單擊左下角的復(fù)選框,否則每次啟動(dòng)Eclipse都會(huì)彈出該對(duì)話框。1.4.2在Eclipse下新建Java項(xiàng)目

(2)Eclipse工作環(huán)境界面簡(jiǎn)介

工作站設(shè)置完成之后,一般會(huì)顯示歡迎界面,將其關(guān)閉即可,然后Eclipse工作環(huán)境界面就會(huì)顯示出來(lái)。該界面主要由菜單欄、工具欄、資源管理視圖、代碼編輯區(qū)、大綱視圖,以及問(wèn)題、Java文檔、聲明和控制臺(tái)視圖組成,如圖1-12所示。1.4.2在Eclipse下新建Java項(xiàng)目圖1-12Eclipse工作環(huán)境界面1.4.2在Eclipse下新建Java項(xiàng)目Eclipse工作環(huán)境界面的主要組成部分的介紹如下。

代碼編輯區(qū):程序員可以在本區(qū)域書寫及調(diào)試Java程序。

資源管理視圖:顯示項(xiàng)目文件的組織架構(gòu)。

大綱視圖:顯示Java程序中類的結(jié)構(gòu)。

問(wèn)題、Java文檔、聲明和控制臺(tái)視圖:顯示Java程序運(yùn)行后的結(jié)果、錯(cuò)誤和異常信息等。1.4.2在Eclipse下新建Java項(xiàng)目Eclipse工作環(huán)境界面的組成元素并不是固定不變的,可以單擊【W(wǎng)indow】→【ShowView】命令自行定義。

Eclipse工作環(huán)境界面中的各視圖位置是可以自由設(shè)置的,如果打亂了視圖的位置或者關(guān)閉了某個(gè)視圖,則可以單擊【W(wǎng)indow】→【ResetPerspective】命令重新設(shè)置。1.4.2在Eclipse下新建Java項(xiàng)目

(3)基于Eclipse平臺(tái)新建Java項(xiàng)目

打開(kāi)Eclipse工作環(huán)境界面后,依次單擊【File】→【New】→【JavaProject】命令,新建一個(gè)Java項(xiàng)目,如圖1-13所示。圖1-13新建Java項(xiàng)目1.4.2在Eclipse下新建Java項(xiàng)目

在彈出的新建Java項(xiàng)目設(shè)置界面中輸入項(xiàng)目名稱“HelloWorld”,其他設(shè)置不用修改,單擊【Finish】按鈕,如圖1-14所示。圖1-14新建Java項(xiàng)目設(shè)置界面1.4.2在Eclipse下新建Java項(xiàng)目至此,HelloWorld項(xiàng)目就創(chuàng)建好了,其界面如圖1-15所示。圖1-15HelloWorld項(xiàng)目界面1.4.3在Eclipse下編寫Java程序

在src文件夾上右擊,在彈出的快捷菜單中依次單擊【New】→【Package】命令,如圖1-16所示,創(chuàng)建包。圖1-16創(chuàng)建包

在彈出的界面中輸入包名“gram”,單擊【Finish】按鈕,如圖1-17所示。圖1-17輸入包名1.4.3在Eclipse下編寫Java程序

在gram包上右擊在彈出的快捷菜單中依次單擊【New】→【Class】命令,創(chuàng)建Java類文件,也就是Java程序,如圖1-18所示。圖1-18創(chuàng)建Java類文件1.4.3在Eclipse下編寫Java程序

在彈出的界面中對(duì)Java類文件進(jìn)行設(shè)置,輸入類名“HelloWorld”,其他設(shè)置如圖1-19所示。圖1-19設(shè)置Java類文件1.4.3在Eclipse下編寫Java程序

單擊【Finish】按鈕之后,完成Java類文件的創(chuàng)建,然后編寫代碼,如圖1-20所示。圖1-20編寫代碼1.4.3在Eclipse下編寫Java程序1.4.4在Eclipse運(yùn)行Java程序

代碼編寫完畢,就可以運(yùn)行Java程序了。常見(jiàn)的Java程序運(yùn)行方法有以下3種。

【方法一】單擊工具欄的運(yùn)行按鈕,如圖1-21所示。圖1-21Java程序運(yùn)行方法一

【方法二】在HelloWorld.java文件上右擊或在代碼區(qū)域右擊,在彈出的快捷菜單中依次單擊【RunAs】→【1JavaApplication】命令,如圖1-22所示。圖1-22Java程序運(yùn)行方法二1.4.4在Eclipse運(yùn)行Java程序

【方法三】依次單擊【Run】→【RunAs】→【1JavaApplication】命令,如圖1-23所示。圖1-23Java程序運(yùn)行方法三1.4.4在Eclipse運(yùn)行Java程序

使用3種方法中的任意一種運(yùn)行程序之后,都可以在Eclipse工作環(huán)境界面的控制臺(tái)(Console)視圖中看到運(yùn)行結(jié)果,即“Hello,World!!!”。如果運(yùn)行結(jié)果能夠正常顯示,就證明Eclipse開(kāi)發(fā)環(huán)境安裝與設(shè)置成功,可以正常工作了。1.4.4在Eclipse運(yùn)行Java程序

工欲善其事,必先利其器。借用集成開(kāi)發(fā)環(huán)境可以讓程序員更加專注于業(yè)務(wù)層面的開(kāi)發(fā),提升軟件開(kāi)發(fā)效率,事半功倍。讀者在后續(xù)的開(kāi)發(fā)中要善于使用集成開(kāi)發(fā)工具,提高開(kāi)發(fā)效率,養(yǎng)成良好的編碼習(xí)慣。1.4.4在Eclipse運(yùn)行Java程序

控制臺(tái)視圖除了顯示文字信息,也可以顯示基本的符號(hào),本案例用星號(hào)來(lái)顯示一個(gè)菱形圖案。案例1-3顯示菱形圖案【案例分析】通過(guò)前面講述的System.out.println()方法,按照一定的規(guī)律,每行輸出若干空格和星號(hào),組成菱形圖案。publicclassDiamond{publicstaticvoidmain(String[]args){System.out.println("*");System.out.println("***");System.out.println("*****");System.out.println("*******");System.out.println("*********");System.out.println("*******");System.out.println("*****");System.out.println("***");System.out.println("*");}}【程序?qū)崿F(xiàn)】案例1-3顯示菱形圖案小結(jié)THANKS!《Java程序設(shè)計(jì)案例教程(微課版)》項(xiàng)目一

迎新電子屏的制作項(xiàng)目2學(xué)生“畫像”——Java語(yǔ)法基礎(chǔ)《Java程序設(shè)計(jì)案例教程(微課版)(第2版)》項(xiàng)目導(dǎo)入

借用Java編寫程序構(gòu)建學(xué)生“畫像”,通過(guò)收集和分析學(xué)生的各類數(shù)據(jù),如學(xué)號(hào)、姓名、成績(jī)等,為學(xué)生的未來(lái)發(fā)展設(shè)計(jì)更加個(gè)性化的培養(yǎng)計(jì)劃,促進(jìn)學(xué)生的成長(zhǎng)和發(fā)展。

嚴(yán)格遵守?cái)?shù)據(jù)安全和隱私保護(hù)法規(guī),確保信息安全,從而培養(yǎng)數(shù)據(jù)安全意識(shí)。學(xué)習(xí)目標(biāo)?掌握變量的定義、初始化及使用方法。

?掌握常用的數(shù)據(jù)類型。

?掌握數(shù)據(jù)輸入輸出的方法。

?掌握運(yùn)算符的使用方法。

?掌握數(shù)據(jù)類型的轉(zhuǎn)換方法。?掌握良好的編碼規(guī)范,增強(qiáng)健康意?識(shí)。(素養(yǎng)目標(biāo))目錄CONTENTS任務(wù)2.1Java的關(guān)鍵字與標(biāo)識(shí)符任務(wù)2.2常量與變量任務(wù)2.3

Java的基本數(shù)據(jù)類型任務(wù)2.4數(shù)據(jù)的輸入與輸出任務(wù)2.5運(yùn)算符與表達(dá)式任務(wù)2.6數(shù)據(jù)類型轉(zhuǎn)換項(xiàng)目實(shí)施

學(xué)生“畫像”項(xiàng)目實(shí)訓(xùn)

文具商城庫(kù)存清單任務(wù)2.1Java的關(guān)鍵字和標(biāo)識(shí)符在Java程序中,有些字符串(單詞)被賦予了特殊含義,有專門用途,被稱作關(guān)鍵字,它們是Java語(yǔ)言的基本詞匯,用于定義程序的結(jié)構(gòu)和控制流程。Java允許編程人員命名程序中的某些元素,如變量、方法和類等,這些由編程人員指定的名稱被稱為標(biāo)識(shí)符。2.1.1Java的關(guān)鍵字1.常用關(guān)鍵字

在Java程序中,有些字符串(單詞)被賦予了特殊含義,有專門用途,被稱作關(guān)鍵字。

Java的關(guān)鍵字都是小寫字母組成的字符串,在大多數(shù)編輯器和集成開(kāi)發(fā)環(huán)境中都會(huì)用特殊顏色標(biāo)識(shí)。2.1.2Java的標(biāo)識(shí)符1.標(biāo)識(shí)符的語(yǔ)法規(guī)范(1)標(biāo)識(shí)符由字母、數(shù)字、下劃線、美元符號(hào)組成,沒(méi)有長(zhǎng)度限制。(2)標(biāo)識(shí)符的第一個(gè)字符不能是數(shù)字字符。(3)自定義標(biāo)識(shí)符不能使用關(guān)鍵字命名。(4)標(biāo)識(shí)符區(qū)分大小寫。

在編程過(guò)程中,經(jīng)常需要用一些符號(hào)來(lái)標(biāo)識(shí)類名、變量名、方法名、類型名、數(shù)組名以及文件名等,這些符號(hào)稱為標(biāo)識(shí)符。簡(jiǎn)單地說(shuō),標(biāo)識(shí)符就是一個(gè)名字。

例如:age、_value、user_name、hello、$salary、姓名、類1123username、class、78.5、HelloWorld、a>b、?xy合法標(biāo)識(shí)符非法標(biāo)識(shí)符2.1.2Java的標(biāo)識(shí)符2.標(biāo)識(shí)符命名風(fēng)格為了增強(qiáng)源程序的可讀性,增強(qiáng)系統(tǒng)的可維護(hù)性,在程序開(kāi)發(fā)中,不僅要做到標(biāo)識(shí)符的命名合法(符合語(yǔ)法規(guī)范),還應(yīng)符合以下風(fēng)格:(1)標(biāo)識(shí)符的命名應(yīng)盡可能有意義,做到見(jiàn)名知意。(2)包名用小寫字母。(3)類名和接口名中每個(gè)單詞的首字母要大寫。(4)變量名和方法名的第一個(gè)單詞首字母小寫,從第二個(gè)單詞開(kāi)始,每個(gè)首字母大寫。(5)常量名的所有字母通常用大寫,用下畫線來(lái)分隔每個(gè)單詞。cn.sdcit.testArrayList、RandomgetName、setAgeuserName

MAX_VALUE目錄CONTENTS任務(wù)2.1Java的關(guān)鍵字與標(biāo)識(shí)符任務(wù)2.2常量與變量任務(wù)2.3

Java的基本數(shù)據(jù)類型任務(wù)2.4數(shù)據(jù)的輸入與輸出任務(wù)2.5運(yùn)算符與表達(dá)式任務(wù)2.6數(shù)據(jù)類型轉(zhuǎn)換項(xiàng)目實(shí)施

學(xué)生“畫像”項(xiàng)目實(shí)訓(xùn)

文具商城庫(kù)存清單2.2常量與變量在程序執(zhí)行過(guò)程中,值不發(fā)生改變的量稱為常量,值能被改變的量稱為變量。常量和變量的聲明都必須使用合法的標(biāo)識(shí)符,所有常量和變量必須在聲明后才能使?用。2.2.1常量1.聲明常量在Java語(yǔ)言中聲明一個(gè)常量,除了要指定數(shù)據(jù)類型外,還需要通過(guò)final關(guān)鍵字進(jìn)行限定。聲明常量的語(yǔ)法格式如下:final數(shù)據(jù)類型

常量名[=值];說(shuō)明:常量名通常使用大寫字母,但這并不是必須的。例如,

常量可以先聲明,后賦值,但是只能賦值一次,否則,系統(tǒng)會(huì)給出編譯錯(cuò)誤。

例如,finalintN=15;2.2.1常量2.字面值常量在Java中,常量包括整型常量、浮點(diǎn)型常量、字符型常量、字符串常量、布爾型常量、null常量等。2.2.2變量聲明變量的語(yǔ)法格式如下:數(shù)據(jù)類型變量名;或數(shù)據(jù)類型

變量名=數(shù)值;說(shuō)明:一個(gè)語(yǔ)句可以同時(shí)聲明多個(gè)相同類型的變量。例如:

變量是在程序運(yùn)行過(guò)程中值可以變化的數(shù)據(jù)。變量有變量名、值、類型3個(gè)屬性。xy1內(nèi)存目錄CONTENTS任務(wù)2.1Java的關(guān)鍵字與標(biāo)識(shí)符任務(wù)2.2常量與變量任務(wù)2.3

Java的基本數(shù)據(jù)類型任務(wù)2.4數(shù)據(jù)的輸入與輸出任務(wù)2.5運(yùn)算符與表達(dá)式任務(wù)2.6數(shù)據(jù)類型轉(zhuǎn)換項(xiàng)目實(shí)施

學(xué)生“畫像”項(xiàng)目實(shí)訓(xùn)

文具商城庫(kù)存清單任務(wù)2.3Java的基本數(shù)據(jù)類型基本數(shù)據(jù)類型也稱為簡(jiǎn)單數(shù)據(jù)類型。Java語(yǔ)言中有8種基本數(shù)據(jù)類型,分別是boolean、byte、short、char、int、long、float、double,這8種基本數(shù)據(jù)類型又可以分為以下四大類?型。整型:byte、short、int、long。浮點(diǎn)型:float、double。字符型:char。布爾型:boolean。2.3.1整型1.整型常量

整型常量有二進(jìn)制、八進(jìn)制、十進(jìn)制和十六進(jìn)制這4種表示形式,具體表示形式如下:

(1)二進(jìn)制:由數(shù)字0和1組成的數(shù)字序列。數(shù)字前面要以0b或者0B開(kāi)頭。(2)八進(jìn)制:以0開(kāi)頭并且其后由0~7(包括0和7)的整數(shù)組成的數(shù)字序列。(3)十進(jìn)制:由數(shù)字0~9(包括0和9)的整數(shù)組成的數(shù)字序列。(4)十六進(jìn)制:以0x或者0X開(kāi)頭,并且其后由0~9、A~F(包括0和9、包括A和F,且字母不區(qū)分大小寫)組成的數(shù)字序列。

整型數(shù)據(jù)用于表示沒(méi)有小數(shù)部分的數(shù)值,可以是正數(shù)或者負(fù)數(shù),也可以是零。程序中出現(xiàn)的整型數(shù)據(jù)可以分為整型常量和整型變量。01270b110056980X512F2.3.1整型2.整型變量整型變量用來(lái)存儲(chǔ)整數(shù)。根據(jù)所占內(nèi)存的大小,整型可以分為byte、short、int和long這4種類型。這4種類型的變量所占存儲(chǔ)空間的大?。ㄗ止?jié)數(shù))和取值范圍如下表所示:

說(shuō)明:整型變量賦值時(shí)不要超出數(shù)據(jù)范圍,以免數(shù)據(jù)溢出。一般情況下,int類型變量應(yīng)用最廣泛。在為long類型變量賦值時(shí),所賦值的后面要加上字母L(或小寫l),說(shuō)明賦值為long類型。如果賦的值未超出int類型的取值范圍,則可以省略字母L(或小寫l)。2.3.1整型3.整型變量舉例bytex=25,y=-56,z;shorta=356;shortb;intm=345,n=-678,t;longw1=64545345L,w2=-67865654L,w3;【例】編寫程序,輸出整型數(shù)據(jù)所占用空間的字節(jié)數(shù),以及整型數(shù)據(jù)的取值范圍?!纠}分析】

每個(gè)漢字都是一個(gè)字符,Java中每個(gè)字符對(duì)應(yīng)一個(gè)Unicode編碼。把漢字字符賦值給int型變量,直接輸出的int型變量值就是對(duì)應(yīng)的Unicode編碼。2.3.1整型publicclassExample2_1{publicstaticvoidmain(String[]args){System.out.println("byte型數(shù)據(jù)的字節(jié)數(shù):"+Byte.SIZE);System.out.println("byte型數(shù)據(jù)的取值范圍:"+Byte.MIN_VALUE+"~"+Byte.MAX_VALUE);System.out.println("short型數(shù)據(jù)的字節(jié)數(shù):"+Short.SIZE);System.out.println("short型數(shù)據(jù)的取值范圍:"+Short.MIN_VALUE+"~"+Short.MAX_VALUE);System.out.println("int型數(shù)據(jù)的字節(jié)數(shù):"+Integer.SIZE);System.out.println("int型數(shù)據(jù)的取值范圍:"+Integer.MIN_VALUE+"~"+Integer.MAX_VALUE);System.out.println("long型數(shù)據(jù)的字節(jié)數(shù):"+Long.SIZE);System.out.println("long型數(shù)據(jù)的取值范圍:"+Long.MIN_VALUE+"~"+Long.MAX_VALUE);}}【程序?qū)崿F(xiàn)】2.3.1整型2.3.2浮點(diǎn)型1.浮點(diǎn)型常量

浮點(diǎn)型常量分為單精度浮點(diǎn)型常量和雙精度浮點(diǎn)型常量?jī)煞N類型。

浮點(diǎn)型常量可用以下兩種形式表示:

(1)十進(jìn)制小數(shù)形式,如3.14f,314.0。(2)指數(shù)形式,使用“底數(shù)+E/e+指數(shù)”的形式。其中,字母E(或e)前面必須有數(shù)字,字符E(或e)后的指數(shù)必須是整數(shù),如3.14e2、10E-2。

浮點(diǎn)型數(shù)據(jù)表示帶小數(shù)的數(shù)值,在程序中出現(xiàn)的浮點(diǎn)型數(shù)據(jù)分為浮點(diǎn)型常量和浮點(diǎn)型變量。

說(shuō)明:?jiǎn)尉雀↑c(diǎn)型常量以“F”或者“f”結(jié)尾,雙精度浮點(diǎn)型常量則以“D”或者“d”結(jié)尾。系統(tǒng)默認(rèn)的浮點(diǎn)型常量為雙精度浮點(diǎn)型常量。2.3.2浮點(diǎn)型2.浮點(diǎn)型變量在Java語(yǔ)言中,浮點(diǎn)型包括float型和double型。浮點(diǎn)型變量所占存儲(chǔ)空間的大小和取值范圍如下表所示。

說(shuō)明:在對(duì)float型賦值時(shí),數(shù)值結(jié)尾必須加上“f”或者“F”,否則系統(tǒng)將默認(rèn)該數(shù)值為double型數(shù)值。2.3.2浮點(diǎn)型3.浮點(diǎn)型變量舉例floatf1,f2=123.4f;

doubled1;doubled2=2021.78;

doubled3=199.3d;doubled4=1.5E3;

2.3.3字符型1.字符型常量

字符型常量用于表示一個(gè)字符,一個(gè)字符型常量需要用一對(duì)英文半角格式的單引號(hào)標(biāo)注,它可以是英文字母、數(shù)字、標(biāo)點(diǎn)符號(hào)以及轉(zhuǎn)義字符表示的特殊字符。

例如,

'm'、'9'、';'、'\n'、'\u0061'、'*'、'好'

字符型數(shù)據(jù)表示單一字符,在Java程序中出現(xiàn)的字符型數(shù)據(jù)有字符型常量和字符型變量。2.3.3字符型2.字符型變量在Java中用char定義字符型變量。字符型變量所占存儲(chǔ)空間的大小和取值范圍如下表所示:

說(shuō)明:Java語(yǔ)言采用Unicode編碼,可以存儲(chǔ)65536個(gè)字符(0x0000~0xffff)。所以在Java中的字符可以用于處理幾乎所有國(guó)家的語(yǔ)言文字,Java中每一個(gè)字符都對(duì)應(yīng)一個(gè)整型的Unicode編碼。2.3.3字符型3.字符型變量舉例charch1=‘a(chǎn)’;

charch2=97;charch3=‘中’;

charch4,ch5;

【例】編寫程序,輸出李磊老師名字中每個(gè)字的Unicode編碼?!纠}分析】每個(gè)漢字都是一個(gè)字符,Java中每個(gè)字符對(duì)應(yīng)一個(gè)Unicode編碼。把漢字字符賦值給int型變量,直接輸出的int型變量值就是對(duì)應(yīng)的Unicode編碼。2.3.3字符型【程序?qū)崿F(xiàn)】publicclassExample2_2{

publicstaticvoidmain(String[]args){intx='李';inty='磊';System.out.println(x);System.out.println(y);}}2.3.3字符型4.轉(zhuǎn)義字符在字符型數(shù)據(jù)中有一種特殊的字符,以反斜線“\”開(kāi)頭,后接一個(gè)或多個(gè)字符,具有特定的含義,叫作轉(zhuǎn)義字符。Java中的常用轉(zhuǎn)義字符如下表所示:2.3.4布爾型

在Java中,事物的“真”和“假”用布爾型的值來(lái)表示。程序中出現(xiàn)的布爾型數(shù)據(jù)包括布爾型常量和布爾型變量。1.布爾型常量

布爾型常量即布爾型數(shù)據(jù)的兩個(gè)值——true和false,用于表示一個(gè)事物的“真”和“假”。2.布爾型變量布爾型又稱為邏輯類型,在Java中,使用boolean關(guān)鍵字聲明布爾型變量,該變量通常用在流程控制中作為判斷條件。布爾型變量所占存儲(chǔ)空間的大小和取值范圍如下表所示:任務(wù)實(shí)踐2-1自我介紹【任務(wù)描述】新生入校后的第一課是進(jìn)行自我介紹,介紹內(nèi)容包括姓名、年齡、身高、體重、性別、興趣愛(ài)好等,試著編寫程序把個(gè)人的基本信息輸出到屏幕?上。【任務(wù)分析】1.

為自我介紹的內(nèi)容選擇合適的數(shù)據(jù)類?型。2.

對(duì)不同類型變量進(jìn)行初始?化。3.

輸出基本信?息?!景咐治觥恳獮閷W(xué)生自我介紹的內(nèi)容選擇合適的數(shù)據(jù)類型,姓名是String類型,年齡是int型、身高是double型,體重是double型,性別是char型,興趣愛(ài)好是String類型。最后輸出個(gè)人信息。

大一新生入校后的第一課是進(jìn)行自我介紹,介紹內(nèi)容包括姓名、年齡、身高、體重、性別、興趣愛(ài)好等,試寫程序把學(xué)生的個(gè)人信息輸出到屏幕上。目錄CONTENTS任務(wù)2.1Java的關(guān)鍵字與標(biāo)識(shí)符任務(wù)2.2常量與變量任務(wù)2.3

Java的基本數(shù)據(jù)類型任務(wù)2.4數(shù)據(jù)的輸入與輸出任務(wù)2.5運(yùn)算符與表達(dá)式任務(wù)2.6數(shù)據(jù)類型轉(zhuǎn)換項(xiàng)目實(shí)施

學(xué)生“畫像”項(xiàng)目實(shí)訓(xùn)

文具商城庫(kù)存清單任務(wù)2.4數(shù)據(jù)的輸入與輸出應(yīng)用程序通常要與用戶進(jìn)行交互,在運(yùn)行過(guò)程中常常需要用戶輸入數(shù)據(jù)以供程序處理,并將處理結(jié)果輸?出。從控制臺(tái)輸出數(shù)據(jù)。從控制臺(tái)輸入數(shù)據(jù)。2.4.1從控制臺(tái)輸出數(shù)據(jù)Java使用System類中的方法實(shí)現(xiàn)數(shù)據(jù)輸出,System.out.print()或者System.out.println()可以輸出字符串、表達(dá)式等的值。輸出語(yǔ)句的語(yǔ)法格式為:

System.out.print(“要輸出的內(nèi)容”);或System.out.println(“要輸出的內(nèi)容”);

說(shuō)明:輸出語(yǔ)句的圓括號(hào)中的內(nèi)容,不一定是字符串,可以是任何有效類型的數(shù)據(jù),包括變量、常量、方法調(diào)用以及表達(dá)式等。當(dāng)輸出的內(nèi)容由多個(gè)字符串或者字符串與其他類型數(shù)據(jù)組成時(shí),使用“+”將多個(gè)字符串或者字符串與其他類型數(shù)據(jù)連接起來(lái)。2.4.1從控制臺(tái)輸出數(shù)據(jù)

輸出時(shí),程序自動(dòng)對(duì)表達(dá)式進(jìn)行計(jì)算,然后將這些數(shù)據(jù)轉(zhuǎn)換成字符串后輸出。System.out.println("HelloJava!");System.out.println("長(zhǎng)方形的面積為:"+a*b);

可以在輸出內(nèi)容中加入轉(zhuǎn)義字符,如\t、\n等,以控制輸出內(nèi)容的格式。例如:System.out.print("長(zhǎng)方形的面積為:\t"+a*b+"\n");輸出舉例:2.4.2從控制臺(tái)輸入數(shù)據(jù)Java語(yǔ)言中,用戶可以通過(guò)鍵盤輸入數(shù)據(jù),來(lái)對(duì)不同類型的變量進(jìn)行賦值。下面介紹使用Scanner類通過(guò)鍵盤輸入數(shù)據(jù)的方法。1、使用Scanner類需要以下3個(gè)步驟:(1)導(dǎo)入Scanner類所在的程序包java.util.Scanner,并且寫在程序的首行。(2)創(chuàng)建Scanner類的對(duì)象。(3)調(diào)用方法,讀取用戶從鍵盤輸入的各種類型的數(shù)據(jù)。2.4.2從控制臺(tái)輸入數(shù)據(jù)2、常用鍵盤讀入數(shù)據(jù)的方法:nextBoolean()//從鍵盤接收布爾型數(shù)據(jù)nextByte()//從鍵盤接收字節(jié)型數(shù)據(jù)nextShort()//從鍵盤接收短整型數(shù)據(jù)nextInt()//從鍵盤接收整型數(shù)據(jù)nextLong()//從鍵盤接收長(zhǎng)整型數(shù)據(jù)nextFloat()//從鍵盤接收單精度浮點(diǎn)型數(shù)據(jù)nextDouble()//從鍵盤接收雙精度浮點(diǎn)型數(shù)據(jù)next()//查找并返回一個(gè)完整的字符串nextLine()//返回當(dāng)前行的字符串部分,不包括結(jié)尾處的行分隔符

說(shuō)明:上述方法執(zhí)行時(shí),程序都會(huì)阻塞,等待用戶輸入數(shù)據(jù),輸入完成后,按【Enter】鍵進(jìn)行確認(rèn)?!纠繌逆I盤輸入兩個(gè)整型數(shù)據(jù),計(jì)算這兩個(gè)整型數(shù)據(jù)的和,并輸出。【例題分析】

對(duì)于整型數(shù)據(jù)的輸入,需要使用Scanner類提供的nextInt()方法。2.4數(shù)據(jù)的輸入與輸出【程序?qū)崿F(xiàn)】importjava.util.Scanner; publicclassExample2_3{publicstaticvoidmain(String[]args){System.out.println("請(qǐng)輸入兩個(gè)整型數(shù)據(jù):");Scannerreader=newScanner(System.in);

inta=reader.nextInt();

intb=reader.nextInt(); intsum=a+b;System.out.println(a+"+"+b+"="+sum);}}任務(wù)實(shí)踐2-2購(gòu)房貸款計(jì)算【任務(wù)描述】商業(yè)貸款是時(shí)下不少購(gòu)房者的選擇。銀行貸款有兩種貸款方式,分別是等額本息法和等額本金法。其中,等額本息法是指把貸款的本金總額與利息總額相加,然后將相加后的總額平均分?jǐn)偟竭€款期限的每個(gè)月中。還款人每個(gè)月還給銀行固定的金額,但每個(gè)月還款金額中的本金比重逐月遞增,利息比重逐月遞?減。每月還款金額的計(jì)算公式是:其中:·

y

—每月的還款金額(單位為元);·

a

—貸款總金額(單位為元);·

n

—貸款總月數(shù);·

r

—月利?率。請(qǐng)輸入貸款總金額a、貸款總月數(shù)n和月利率r,計(jì)算并輸出每月的還款金額y。

任務(wù)實(shí)踐2-2購(gòu)房貸款計(jì)算【任務(wù)分析】1.

通過(guò)Scanner類創(chuàng)建輸入對(duì)象,從鍵盤讀入貸款總金額a、貸款總月數(shù)n和月利率r。2.

根據(jù)公式計(jì)算每月還款金額,公式中有(1+r)的n次冪的計(jì)算,使用Math類的pow()方?法。3.

輸出還款金?額。。

目錄CONTENTS任務(wù)2.1Java的關(guān)鍵字與標(biāo)識(shí)符任務(wù)2.2常量與變量任務(wù)2.3

Java的基本數(shù)據(jù)類型任務(wù)2.4數(shù)據(jù)的輸入與輸出任務(wù)2.5運(yùn)算符與表達(dá)式任務(wù)2.6數(shù)據(jù)類型轉(zhuǎn)換項(xiàng)目實(shí)施

學(xué)生“畫像”項(xiàng)目實(shí)訓(xùn)

文具商城庫(kù)存清單任務(wù)2.5運(yùn)算符與表達(dá)式描述各種不同運(yùn)算的符號(hào)稱為運(yùn)算符。用運(yùn)算符把操作數(shù)連接而成的式子稱為表達(dá)式。根據(jù)操作數(shù)的個(gè)數(shù),運(yùn)算符可分為單目運(yùn)算符、雙目運(yùn)算符和三目運(yùn)算符。表達(dá)式的類型由運(yùn)算符的類型決定,可分為算術(shù)表達(dá)式、關(guān)系表達(dá)式、邏輯表達(dá)式、賦值表達(dá)式、條件表達(dá)式?等。2.5.1算術(shù)運(yùn)算符與算術(shù)表達(dá)式

算術(shù)運(yùn)算符分為雙目運(yùn)算符和單目運(yùn)算符。算術(shù)表達(dá)式也稱為數(shù)值型表達(dá)式,由算術(shù)運(yùn)算符、數(shù)值型常量和變量、方法調(diào)用以及圓括號(hào)組成,其運(yùn)算結(jié)果為數(shù)值。

Java中的算術(shù)運(yùn)算符如下表所示。2.5.1算術(shù)運(yùn)算符與算術(shù)表達(dá)式

1、雙目運(yùn)算符

雙目運(yùn)算符有加號(hào)(+)、減號(hào)(-)、乘號(hào)(*)、除號(hào)(/)、取模號(hào)(%)5種,下面介紹其中兩種。

(1)除法運(yùn)算:

例如,15/4得到的結(jié)果是3,而15.0/4得到的結(jié)果是3.75。(2)取模運(yùn)算:

例如,(-5%3)=-2,5%(-3)=2,(-5)%(-3)=-2,5%3=2。說(shuō)明:在Java中表示數(shù)學(xué)中的乘法時(shí),乘號(hào)“*”不能省略。例如,6*a不能寫成6a或者6·a。2.5.1算術(shù)運(yùn)算符與算術(shù)表達(dá)式

2、單目運(yùn)算符

常見(jiàn)的單目運(yùn)算符有正號(hào)(+)、負(fù)號(hào)(-)、自增運(yùn)算符(++)和自減運(yùn)算符(--)。

自增、自減運(yùn)算符有兩種用法。(1)前置運(yùn)算,即運(yùn)算符放在變量之前,如++i、--j。

例如,(2)后置運(yùn)算,即運(yùn)算符放在變量之后,如i++、j--。

例如,說(shuō)明:自增、自減運(yùn)算符不能用于常量和表達(dá)式。例如,5++、--(a+b)等都是非法的?!纠烤幊虒?shí)現(xiàn)計(jì)算器的基本算術(shù)計(jì)算功能?!纠}分析】

定義4個(gè)整型變量a、b、c、d并分別進(jìn)行初始化,輸出各種算術(shù)運(yùn)算符的相應(yīng)運(yùn)算結(jié)果。2.5.1算術(shù)運(yùn)算符與算術(shù)表達(dá)式【程序?qū)崿F(xiàn)】publicclassExample2_4{publicstaticvoidmain(String[]args){inta=10;intb=20;intc=25;intd=25;System.out.println("a+b="+(a+b));System.out.println("a-b="+(a-b));System.out.println("a*b="+(a*b));System.out.println("b/a="+(b/a));System.out.println("b%a="+(b%a));System.out.println("c%a="+(c%a));System.out.println("a++="+(a++));System.out.println("a--="+(a--));System.out.println("d++="+(d++));//查看d++與++d的不同System.out.println("++d="+(++d));}}任務(wù)實(shí)踐2-3計(jì)算BMI【任務(wù)描述】從鍵盤輸入一個(gè)人的身高和體重,根據(jù)公式計(jì)算BMI。BMI(BodyMassIndex,體重指數(shù))是用體重(公斤)數(shù)除以身高(米)數(shù)的平方得出的數(shù)值,是國(guó)際上常用的衡量人體胖瘦程度以及是否健康的一個(gè)標(biāo)?準(zhǔn)?!救蝿?wù)分析】1.

通過(guò)Scanner類創(chuàng)建輸入對(duì)象,從鍵盤讀入身高、體?重。2.

根據(jù)公式計(jì)算BMI。3.

輸出BMI。任務(wù)實(shí)踐2-4數(shù)字反轉(zhuǎn)【任務(wù)描述】從鍵盤輸入一個(gè)三位正整數(shù)n,將n的個(gè)位、十位、百位倒序生成一個(gè)新數(shù)字并輸出。例如,輸入521,輸出125?!救蝿?wù)分析】1.

通過(guò)Scanner類創(chuàng)建輸入對(duì)象,從鍵盤讀入一個(gè)三位正整?數(shù)。2.

通過(guò)%和/運(yùn)算分離數(shù)?位。3.

將其倒序組合形成新數(shù)字并輸出顯?示。2.5.2關(guān)系運(yùn)算符與算術(shù)表達(dá)式

關(guān)系運(yùn)算符用于比較兩個(gè)操作數(shù)之間的關(guān)系。關(guān)系運(yùn)算符計(jì)算的結(jié)果為邏輯值(布爾型的值)。如果滿足關(guān)系,則表達(dá)式的值為真(true),否則為假(false)。

常用的關(guān)系運(yùn)算符如下表所示。說(shuō)明:(1)關(guān)系運(yùn)算符的結(jié)果是布爾型的值。(2)等于運(yùn)算符“==”由兩個(gè)等號(hào)組成,中間不能有空格,使用時(shí)注意不要和賦值運(yùn)算符“=”混淆。(3)“>”“>=”“<”“<=”只支持左右兩邊操作數(shù)是數(shù)值類型的。而“==”“!=”兩邊的操作數(shù)既可以是數(shù)值類型的,也可以是引用類型的。【例】編程實(shí)現(xiàn)關(guān)系運(yùn)算符的各種運(yùn)算。【例題分析】

定義2個(gè)整型變量a、b并分別進(jìn)行初始化,輸出關(guān)系運(yùn)算符的相應(yīng)運(yùn)算結(jié)果。2.5.2關(guān)系運(yùn)算符與關(guān)系表達(dá)式【程序?qū)崿F(xiàn)】publicclassExample2_5{publicstaticvoidmain(String[]args){inta=10;intb=50;System.out.println("a==b="+(a==b));System.out.println("a!=b="+(a!=b));System.out.println("a>b="+(a>b));System.out.println("a<b="+(a<b));System

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論