




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第2章基本數(shù)據(jù)類型與基本操作Java程序設(shè)計(jì)2學(xué)習(xí)目標(biāo)本章學(xué)習(xí)Java語(yǔ)言的基本數(shù)據(jù)類型及相關(guān)內(nèi)容,包括變量、常量、數(shù)據(jù)類型和表達(dá)式,掌握如何利用基本數(shù)據(jù)類型、輸入輸出及運(yùn)算表達(dá)式來(lái)編寫(xiě)程序。2.1標(biāo)識(shí)符程序設(shè)計(jì)語(yǔ)言使用標(biāo)識(shí)符命名程序中的元素,如類、方法、變量、常量和包等。
Java語(yǔ)言命名標(biāo)識(shí)符的規(guī)則如下:標(biāo)識(shí)符是由字母、數(shù)字、下劃線(_)和美元符($)構(gòu)成的字符序列。標(biāo)識(shí)符的第1個(gè)字符必須是字母、劃線(_)或美元符($),不能是數(shù)字。標(biāo)識(shí)符不能與關(guān)鍵字相同。標(biāo)識(shí)符不能是true、false和null。標(biāo)識(shí)符可以有任意長(zhǎng)度。Java語(yǔ)言的關(guān)鍵字abstractcontinuefornewswitchassertdefaultgotopackagesynchronizedbooleandoifprivatethisbreakdoubleimplementsprotectedthrowbyteelseimportpublicthrowscaseenuminstanceofreturntransientcatchextendsintshorttrycharfinalinterfacestaticvoidclassfinallylongstrictfpvolatileconstfloatnativesuperwhileJava語(yǔ)言幾種常見(jiàn)程序元素的命名習(xí)慣變量和方法通常使用小寫(xiě)字母命名,如果名字包括多個(gè)詞,則連接在一起,使第一個(gè)詞的字母小寫(xiě)而其它詞的首字母大寫(xiě),通常變量為名詞或名詞短語(yǔ),而方法為動(dòng)詞或運(yùn)行短語(yǔ)。類通常使用名詞或名詞短語(yǔ)命名,構(gòu)成類名的每個(gè)單詞的首字母均大寫(xiě)。常量中的字母都大寫(xiě),兩個(gè)單詞之間用下劃線連接。2.2基本數(shù)據(jù)類型Java語(yǔ)言的數(shù)據(jù)類型分為基本數(shù)據(jù)類型和引用數(shù)據(jù)類型兩大類。基本數(shù)據(jù)類型包括4種整數(shù)類型、2種浮點(diǎn)類型、字符類型和布爾類型。引用類型主要用于訪問(wèn)程序中創(chuàng)建的對(duì)象。2.2基本數(shù)據(jù)類型1.整數(shù)類型使用整數(shù)類型時(shí),應(yīng)該根據(jù)要描述的數(shù)值大小選擇恰當(dāng)?shù)卣麛?shù)類型,應(yīng)用最多的是int類型,數(shù)據(jù)值很大情況下選擇long,byte和short通常用于文件讀寫(xiě)處理等,從而有效控制存儲(chǔ)空間利用率。2.浮點(diǎn)類型浮點(diǎn)類型的數(shù)值在存儲(chǔ)和運(yùn)算過(guò)程中會(huì)產(chǎn)生誤差,表示通常所說(shuō)的實(shí)數(shù),其數(shù)值由整數(shù)部分和小數(shù)部分構(gòu)成。兩種浮點(diǎn)類型除存儲(chǔ)位數(shù)不同外,其精度也不同。float類型的有效數(shù)字為6~7位,double類型的有效數(shù)字為15位。3.字符類型字符類型在程序中用于表示單個(gè)字符。Java選用了Unicode編碼字符集。Unicode是一種16位編碼,最大可以容納65535個(gè)字符,除傳統(tǒng)的西方字符外,也容納了中文、日文和韓文等亞洲文字。
4.布爾類型布爾類型是一種用于表示邏輯判斷結(jié)果的數(shù)據(jù)類型,它只有兩個(gè)值:表示“真”的true和表示“假”的false。2.3直接量與常量直接量是源程序代碼中直接出現(xiàn)的各種數(shù)據(jù)類型的數(shù)值。常量是指在程序中使用標(biāo)識(shí)符進(jìn)行命名且數(shù)值不能改變的量。它們的共同特點(diǎn)是在程序運(yùn)行過(guò)程中數(shù)值大小不同發(fā)生改變。2.3.1直接量Java語(yǔ)言中,不同數(shù)據(jù)類型的直接量有不同的表示方式和不同的數(shù)據(jù)類型。1.整型直接量Java語(yǔ)言的整型直接量有3種表示形式:十進(jìn)制、八進(jìn)制和十六進(jìn)制。十進(jìn)制整數(shù)以10為基數(shù),即“逢10進(jìn)1”,由數(shù)字0~9和正號(hào)(+)、負(fù)號(hào)(-)構(gòu)成,如:1234、-78、0均為十進(jìn)制直接量;八進(jìn)制整數(shù)以8為基數(shù),即“逢8進(jìn)1”,由數(shù)字0~7和正號(hào)(+)、負(fù)號(hào)(-)構(gòu)成。八進(jìn)制整數(shù)必須用數(shù)字“0”開(kāi)始,如:027、-0123均為八進(jìn)制直接量。十六進(jìn)制整數(shù)以16為基數(shù),即“逢16進(jìn)1”,由數(shù)字0~9、字母A~F(可以小寫(xiě))和正號(hào)(+)、負(fù)號(hào)(-)構(gòu)成。十六進(jìn)制整數(shù)必須用“0x”或“0X”開(kāi)始,如:-0x123、0xFFFF均為十六進(jìn)制直接量。整型直接量默認(rèn)是int類型的,可以通過(guò)在直接量的末尾加字母L或l表示其數(shù)據(jù)類型為long。例如:100表示int型十進(jìn)制整數(shù),100L表示long型十進(jìn)制整數(shù)。2.浮點(diǎn)型直接量Java語(yǔ)言的浮點(diǎn)類型直接量有兩種表示形式:十進(jìn)制小數(shù)點(diǎn)形式和科學(xué)記數(shù)法。十進(jìn)制小數(shù)點(diǎn)表示法由整數(shù)部分、小數(shù)點(diǎn)和小數(shù)部分組成,整數(shù)部分和小數(shù)部分可以省略,但不能同時(shí)省略,被省略部分的值為0。例如:3.14、.12、100.、-123.4等??茖W(xué)計(jì)數(shù)法也稱指數(shù)形式,由十進(jìn)制小數(shù)點(diǎn)表示部分和指數(shù)部分組成,指數(shù)部分用E或e開(kāi)始,指數(shù)必須為整數(shù)。例如:1.23E+6、1.0E-10、-3.14E5等。浮點(diǎn)類型直接量默認(rèn)為double類型,如果要在程序中書(shū)寫(xiě)float類型的直接量,則需要在直接末尾添加F或f。例如:1.23F、1.23E+6F表示float的直接量。3.字符型直接量字符型直接量是用單引號(hào)括起來(lái)的單個(gè)字符。由于使用Unicode編碼,Java程序中單個(gè)漢字也作為字符直接使用。例如:'A'、'$'、'漢'、'中'都是合法的字符直接量。
Java轉(zhuǎn)義字符序列4.布爾型直接量Java語(yǔ)言的布爾型直接量只有2個(gè):true和false。5.字符串直接量字符串直接量不屬于基本數(shù)據(jù)類型,是程序設(shè)計(jì)過(guò)程中使用非常多的一種直接量。字符串是指由零個(gè)或多個(gè)字符組成的字符序列。Java語(yǔ)言中,字符串直接量是用雙引號(hào)把字符序列括起來(lái)的形式,字符序列中字符的個(gè)數(shù)稱為字符串的長(zhǎng)度。2.3.2常量Java語(yǔ)言中,聲明常量的語(yǔ)法形式為:[修飾符]final數(shù)據(jù)類型常量標(biāo)識(shí)符[=常量初始值]Java對(duì)常量的定義是其值在程序運(yùn)行期間只能被賦值一次,一旦賦值后就不能再被整改,因此不必在聲明常量立即賦值,可以在適當(dāng)?shù)胤竭M(jìn)行賦值。2.4變量與賦值運(yùn)算符變量用來(lái)存儲(chǔ)程序中需要處理的數(shù)據(jù)。與常量不同,變量的值在程序執(zhí)行過(guò)程中會(huì)發(fā)生改變。每個(gè)變量都必須有確定的數(shù)據(jù)類型和名字,這可以通過(guò)變量定義完成。
2.4變量與賦值運(yùn)算符變量定義的語(yǔ)法:數(shù)據(jù)類型變量名1[,變量名2[,……]];在定義變量的同時(shí)使用賦值運(yùn)算符“=”為變量賦予一個(gè)初始值,稱為變量的初始化。賦值運(yùn)算符“=”用來(lái)將其右邊的數(shù)值賦予其左邊的變量,如果其右邊是一個(gè)表達(dá)式則需要先計(jì)算表達(dá)式的結(jié)果后,再把結(jié)果賦值給變量。2.5運(yùn)算符與表達(dá)式表達(dá)式是用來(lái)說(shuō)明某種運(yùn)算規(guī)則的語(yǔ)言成份,由參與運(yùn)算的操作數(shù)、運(yùn)算符及括號(hào)組成。表達(dá)式運(yùn)算得到的結(jié)果稱為表達(dá)式的值,這個(gè)值的數(shù)據(jù)類型也就是表達(dá)式的類型。2.5運(yùn)算符與表達(dá)式運(yùn)算符的作用是使它連接的操作數(shù)完成特定運(yùn)算,對(duì)不同類型的數(shù)據(jù)能夠進(jìn)行的運(yùn)算是不同的。運(yùn)算符具有操作數(shù)個(gè)數(shù)與類型、優(yōu)先級(jí)和結(jié)合性等特性。Java語(yǔ)言提供了算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符、位運(yùn)算符等種類豐富的運(yùn)算,并對(duì)運(yùn)算符的優(yōu)先級(jí)、結(jié)合性有明確的規(guī)定。2.5.1算術(shù)運(yùn)算算術(shù)運(yùn)算符按操作數(shù)個(gè)數(shù)分為雙目運(yùn)算符和單目運(yùn)算符兩類。雙目算術(shù)運(yùn)算符2.5.1算術(shù)運(yùn)算關(guān)于雙目算術(shù)運(yùn)算,需要說(shuō)明以下兩個(gè)問(wèn)題:兩個(gè)整數(shù)類型的數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算后,結(jié)果仍然是整數(shù)類型。模運(yùn)算求a除以b的余數(shù),結(jié)果的符號(hào)與被除數(shù)a的符號(hào)相同。2.5.1算術(shù)運(yùn)算單目算術(shù)運(yùn)算符
2.5.2關(guān)系運(yùn)算關(guān)系表達(dá)式通過(guò)關(guān)系運(yùn)算符確定兩個(gè)數(shù)據(jù)之間的小于、大于及相等關(guān)系,也稱比較運(yùn)算表達(dá)式。關(guān)系運(yùn)算符
2.5.3邏輯運(yùn)算邏輯運(yùn)算符可以對(duì)象布爾類型的數(shù)據(jù)進(jìn)行運(yùn)算,結(jié)果也是布爾類型。Java語(yǔ)言提供了兩個(gè)雙目邏輯運(yùn)算符:&&(邏輯與)和||(邏輯或)、一個(gè)單目邏輯運(yùn)算符:!(邏輯非)。2.5.3邏輯運(yùn)算邏輯運(yùn)算規(guī)則表
2.5.4位運(yùn)算位運(yùn)算符用來(lái)對(duì)整型數(shù)據(jù)按二進(jìn)制位進(jìn)行運(yùn)算,結(jié)果也是整型數(shù)據(jù)。Java語(yǔ)言的位運(yùn)算包括位邏輯運(yùn)算和位移運(yùn)算。2.5.4位運(yùn)算位邏輯運(yùn)算符和運(yùn)算規(guī)則位移運(yùn)算符和運(yùn)算規(guī)則2.5.5賦值運(yùn)算復(fù)合賦值運(yùn)算符2.5.6條件運(yùn)算條件運(yùn)算符是提供的一個(gè)三目運(yùn)算符,使用它構(gòu)成的條件運(yùn)算表達(dá)式可以根據(jù)一個(gè)條件在兩個(gè)表達(dá)式的值中選擇一個(gè)作為結(jié)果。條件運(yùn)算符的使用形式:
條件?表達(dá)式1:表達(dá)式22.5.7運(yùn)算符與表達(dá)式的計(jì)算規(guī)則Java運(yùn)算符的優(yōu)先級(jí)與結(jié)合性:2.6數(shù)據(jù)類型的轉(zhuǎn)換數(shù)據(jù)類型的轉(zhuǎn)換分為自動(dòng)類型轉(zhuǎn)換和強(qiáng)制類型轉(zhuǎn)換兩種。強(qiáng)制類型轉(zhuǎn)換需要在程序中顯式的寫(xiě)出,其語(yǔ)法如下:(數(shù)據(jù)類型關(guān)鍵字)表達(dá)式2.6.1數(shù)值型數(shù)據(jù)之間的轉(zhuǎn)換當(dāng)兩個(gè)類型不同的數(shù)值操作數(shù)進(jìn)行雙目運(yùn)算時(shí),Java按照以下規(guī)則進(jìn)行自動(dòng)轉(zhuǎn)換操作數(shù)的類型:如果操作數(shù)之一是double類型,則把另一個(gè)轉(zhuǎn)換為double類型。否則,如果操作數(shù)之一是float類型,則把另一個(gè)轉(zhuǎn)換為float類型。否則,如果操作數(shù)之一是long類型,則把另一個(gè)轉(zhuǎn)換為long類型。否則,把兩個(gè)操作數(shù)都轉(zhuǎn)換為int類型。2.6.2字符型數(shù)據(jù)與數(shù)值型數(shù)據(jù)之間的轉(zhuǎn)換char型數(shù)據(jù)可以轉(zhuǎn)換為任何數(shù)值型數(shù)據(jù),反之亦然。一個(gè)char型數(shù)據(jù)轉(zhuǎn)換為數(shù)值型數(shù)據(jù)時(shí),該字符的Unicode編碼值被轉(zhuǎn)換為指定的數(shù)值類型;一個(gè)int整數(shù)被轉(zhuǎn)換為char類型時(shí),只保留整數(shù)的低16位作為Unicode編碼,高位部分被截?cái)?;?dāng)一個(gè)浮點(diǎn)數(shù)被轉(zhuǎn)換為char類型時(shí),先將浮點(diǎn)數(shù)轉(zhuǎn)換為int類型,再轉(zhuǎn)換成char類型。2.6.3字符串與基本數(shù)據(jù)類型之間的轉(zhuǎn)換兩個(gè)字符串可以通過(guò)“+”連接起來(lái),此處的“+”稱為連接運(yùn)算符。Java的“+”運(yùn)算符在參與運(yùn)算的數(shù)據(jù)類型不同的情況下有不同的作用,所以在使用時(shí)要特別注意區(qū)別不同的運(yùn)算。2.7使用Math類進(jìn)行數(shù)學(xué)運(yùn)算Java在標(biāo)準(zhǔn)類庫(kù)中提供了Math類,其中定義了與數(shù)學(xué)運(yùn)算有關(guān)的方法和兩個(gè)常量。Math類中的方法主要有三角函數(shù)方法、指數(shù)函數(shù)方法等。2.7使用Math類進(jìn)行數(shù)學(xué)運(yùn)算Math類中部分方法2.8基本輸入輸出目前主流程序中有兩種輸入輸出方式:命令行界面和圖形用戶界面。命令行界面較為簡(jiǎn)單且運(yùn)行效率高,但缺乏直觀性和交互性。圖形用戶界面用戶體驗(yàn)好且操作方便,但是實(shí)現(xiàn)較復(fù)雜。1.數(shù)據(jù)輸入JDK5.0中增加了類Scanner,使用它可以便地完成各種基本類型數(shù)據(jù)和字符串的輸入。Scanner類中輸入數(shù)據(jù)的方法例2-12.數(shù)據(jù)輸出使用System.out.print()和System.out.println()方法可以在標(biāo)準(zhǔn)輸出設(shè)備輸出結(jié)果。其中System.out是PrintStream類型的標(biāo)準(zhǔn)輸出對(duì)象,兩個(gè)方法的參數(shù)是一樣的,均為一個(gè)字符串。兩者的區(qū)別在于println()方法在輸出完字符串后自動(dòng)添加一個(gè)回車(chē)換行。2.數(shù)據(jù)輸出為了便于控制多個(gè)不同類型數(shù)據(jù)的輸出,JDK5開(kāi)始增加了printf方法,其格式為:System.out.printf("格式字符串",表達(dá)式1,表達(dá)式2,…,表達(dá)式n);2.8.2使用對(duì)話框進(jìn)行輸出輸出使用對(duì)話框進(jìn)行字符串輸入輸出的方式。要實(shí)現(xiàn)這個(gè)目標(biāo),需要使用JOptionPane類的方法。對(duì)話框輸出示例:2.8.2
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 酒店科技應(yīng)用趨勢(shì)試題及答案
- 考試心態(tài)稅務(wù)師試題及答案
- 數(shù)據(jù)庫(kù)存儲(chǔ)結(jié)構(gòu)試題及答案
- 2025設(shè)備采購(gòu)借款合同簡(jiǎn)易借款合同
- 《2025房屋租賃中介服務(wù)合同》
- 2025房地產(chǎn)買(mǎi)賣(mài)合同范例
- 2025合同解除備案登記表
- 2025專業(yè)版企業(yè)借款合同模板
- 廣東郵電職業(yè)技術(shù)學(xué)院《數(shù)值計(jì)算方法》2023-2024學(xué)年第一學(xué)期期末試卷
- 武漢設(shè)計(jì)工程學(xué)院《檔案管理信息系統(tǒng)》2023-2024學(xué)年第二學(xué)期期末試卷
- 人音版 (五線譜)四年級(jí)下冊(cè)音樂(lè)-5 《小溪流水響叮咚》教案
- 2023-2024學(xué)年上海交大附中高三上英語(yǔ)10月周練卷及答案
- 病理生理學(xué)病例分析報(bào)告
- 三D打印公開(kāi)課
- 補(bǔ)鐵劑中鐵元素的檢驗(yàn)-應(yīng)用配合物進(jìn)行物質(zhì)檢驗(yàn)高二化學(xué)魯科版(2019)選擇性必修2
- 基于深度學(xué)習(xí)的圖像分割
- 給水管網(wǎng)改造工程施工組織設(shè)計(jì)概述
- 營(yíng)業(yè)收入的預(yù)測(cè)分析報(bào)告
- 無(wú)人機(jī)工藝技術(shù)方案
- 從趙紫宸的神學(xué)思想看基督教與中國(guó)社會(huì)之關(guān)系
- 專車(chē)接送服務(wù)租賃合同
評(píng)論
0/150
提交評(píng)論