




下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第-2-章-數(shù)據(jù)類型第2章數(shù)據(jù)類型§ 2.1數(shù)據(jù)類型數(shù)據(jù)類型指明了變量或表達(dá)式的狀態(tài)和行為。Java的數(shù)據(jù)類型如下所示:Java不支持C、C+中的指針類型、結(jié)構(gòu)體類型和共用體類型。本章我們主要介紹簡(jiǎn)單 類型。§ 2.2常量與變量 1、常量Java中的常量值是用文字串表示的,它區(qū)分為不同的類型,如整型常量123,實(shí)型常量1.23,字符常量a',布爾常量true、false以及字符串常量"This is a constant string."。與C、C+不同,Java中不能通過(guò)#define命令把一個(gè)標(biāo)識(shí)符定義為常量,而是用關(guān)鍵字final 來(lái)實(shí)現(xiàn),
2、如 final double Pl=3.14159(有關(guān) final 的用法見(jiàn)6.2.3)。2、變量變量是Java程序中的基本存儲(chǔ)單元,它的定義包括變量名、變量類型和作用域幾個(gè)部分。 變量名是一個(gè)合法的標(biāo)識(shí)符,它是字母、數(shù)字、下劃線或美元符” $ "的序列,Java對(duì)變量名區(qū)分大小寫(xiě),變量名不能以數(shù)字開(kāi)頭,而且不能為保留字。合法的變量名如:myName、 value-1、dollar $等。非法的變量名如:2mail、room#、class (保留字)等,變量名應(yīng)具有一定的含義,以增加程序的可讀性。 變量類型可以為上面所說(shuō)的任意一種數(shù)據(jù)類型 變量的作用域指明可訪問(wèn)該變量的一段代碼。聲
3、明一個(gè)變量的同時(shí)也就指明了變量的作用域。按作用域來(lái)分,變量可以有下面幾種:局部變量、類變量、方法參數(shù)、例外處理參數(shù)。局部變量在方法或方法的一塊代碼中聲明,它的作用域?yàn)樗诘拇a塊(整個(gè)方法或方法中的某塊代碼)。類變量在類中聲明,而不是在類的某個(gè)方法中聲明 ,它的作用域是整個(gè)類 。方法參數(shù)傳遞 給方法,它的作用域就是這個(gè)方法。例外處理參數(shù)傳遞給例外處理代碼,它的作用域就是例外 處理部分。在一個(gè)確定的域中,變量名應(yīng)該是唯一的。通常一個(gè)域用大括號(hào)來(lái)劃定。有關(guān)類變量、參數(shù)傳遞以及例外處理將分別在6.7.1、6.2 .4和第八章中講述。 變量的聲明格式為:type ide ntifier=value,
4、ide ntifier=value;例如:int a, b, c;double d1, d2=0.0;其中,多個(gè)變量間用逗號(hào)隔開(kāi),d2=0.0對(duì)實(shí)型變量d2賦初值0.0,只有局部變量和類變量是可 以這樣賦初值的,而方法參數(shù)和例外處理參數(shù)的變量值是由調(diào)用者給出的。§ 2.3整型數(shù)據(jù) 1整型常量:與C,C+相同Java的整常數(shù)有三種形式: 十進(jìn)制整數(shù),如123,-456,0 八進(jìn)制整數(shù),以0開(kāi)頭,如 0123表示十進(jìn)制數(shù)83,-011表示十進(jìn)制數(shù)-9。 十六進(jìn)制整數(shù),以0x或0X開(kāi)頭,如 0x123表示十進(jìn)制數(shù)291,-0X12表示十進(jìn)制數(shù)-18。整型常量在機(jī)器中占32位具有int型的值
5、,對(duì)于long型值,則要在數(shù)字后加L或I,如123L表示一個(gè)長(zhǎng)整數(shù),它在機(jī)器中占64位。2、整型變量:整型變量的類型有byte、short、in t、Io ng四種。下表列出各類型所在內(nèi)存的位數(shù)和其表示范圍。int類型是最常使用的一種整數(shù)類型。它所表示的數(shù)據(jù)范圍足夠大,而且適合于32位、64位處理器。但對(duì)于大型計(jì)算,常會(huì)遇到很大的整數(shù),超出int類型所表示的范圍,這時(shí)要使用 long類型。由于不同的機(jī)器對(duì)于多字節(jié)數(shù)據(jù)的存儲(chǔ)方式不同,可能是從低字節(jié)向高字節(jié)存儲(chǔ),也 可能是從高字節(jié)向低字節(jié)存儲(chǔ),這樣在分析網(wǎng)絡(luò)協(xié)議或文件格式時(shí),為了解決不同機(jī)器上的字節(jié)存儲(chǔ)順序問(wèn)題,用byte類型來(lái)表示數(shù)據(jù)是合適的。
6、而通常情況下,由于其表示的數(shù)據(jù) 范圍很小,容易造成溢出,應(yīng)避免使用。short類型則很少使用,它限制數(shù)據(jù)的存儲(chǔ)為先高字節(jié),后低字節(jié),這樣在某些機(jī)器中會(huì)出 錯(cuò)。3、整型變量的定義如:byte b; /指定變量b為byte型 short s; /指定變量s為short型 int i; /指定變量i為int型 long l; II指定變量I為long型§ 2.4浮點(diǎn)型(實(shí)型)數(shù)據(jù)浮點(diǎn)數(shù)分為單精度和雙精度Java中的單精度和雙精度分別為float和double。float占4個(gè)字節(jié),double占8個(gè)字節(jié)。1實(shí)型常量與C,C+相同Java的實(shí)常數(shù)有兩種表示形式:十進(jìn)制數(shù)形式,由數(shù)字和小數(shù)點(diǎn)組
7、成,且必須有小數(shù)點(diǎn),女口0.123, .123, 123.,123.0科學(xué)計(jì)數(shù)法形式。如:123e3或123E3,其中e或E之前必須有數(shù)字,且e或E后面的 指數(shù)必須整數(shù)。實(shí)常數(shù)在機(jī)器中占64位具有double型的值。對(duì)于float型的值,則要在數(shù)字后加f或F, 如12.3F,它在機(jī)器中占32位,且表示精度較低。2、實(shí)型變量實(shí)型變量的類型有float和double兩種,下表列出這兩種類型所占內(nèi)存的位數(shù)和其表示范圍。數(shù)據(jù)類型 所占位數(shù) 數(shù)的范圍float 32 3.4e-038 3.4e+038double 64 1.7e-308 1.7e+308雙精度類型double比單精度類型float具有更
8、高的精度和更大的表示范圍,常常使用3、實(shí)型變量定義float f; /指定變量f為float型double d; /指定變量d為double型注與C、C+不同,Java中沒(méi)有無(wú)符號(hào)型整數(shù),而且明確規(guī)定了整型和浮點(diǎn)型數(shù)據(jù)所占的內(nèi) 存字節(jié)數(shù),這樣就保證了安全性、魯棒性和平臺(tái)無(wú)關(guān)性。§ 2.5字符型數(shù)據(jù) 1字符常量字符常量是用單引號(hào)括起來(lái)的一個(gè)字符,如a', A'。另外,與C、C+相同,Java也提供轉(zhuǎn)義字符,以反斜杠()開(kāi)頭,將其后的字符轉(zhuǎn)變?yōu)榱硗獾暮x,下表列出了 Java中的轉(zhuǎn)義字符。與C、C+不同,Java中的字符型數(shù)據(jù)是16位無(wú)符號(hào)型數(shù)據(jù),它表示Uni code集
9、,而不僅僅 是ASCII集,例如u0061表示ISO拉丁碼的a'。轉(zhuǎn)義字符描述ddd 1到3位8進(jìn)制數(shù)據(jù)所表示的字符(ddd) uxxxx 1到4位16進(jìn)制數(shù)所表示的字符(xxxx) '單引號(hào)字符反斜杠字符r回車n換行f走紙換頁(yè)t橫向跳格b退格 2、字符型變量3 / 6第-2-章-數(shù)據(jù)類型字符型變量的類型為char,它在機(jī)器中占16位,其范圍為065 535。字符型變量的定義如char c='a' /指定變量c為char型,且賦初值為'a'與C、C+不同Java中的字符型 數(shù)據(jù)不能用作整數(shù),因?yàn)镴ava不提供無(wú)符號(hào)整數(shù)類型。但是同樣可以把它當(dāng)作整
10、數(shù)數(shù)據(jù)來(lái)操作。例如:int three=3;char on e='1'char four=(char)(three+o ne);/four='4'上例中,在計(jì)算加法時(shí),字符型變量one被轉(zhuǎn)化為整數(shù),進(jìn)行相加,最后把結(jié)果又轉(zhuǎn)化為字符型。3、字符串常量與C、C+相同,Java的字符串常量是用雙引號(hào)("")括起來(lái)的一串字符,如 "This is a string.n"。但不同的是,Java中的字符串常量是作為 String類的一個(gè)對(duì)象來(lái)處理的 , 而不是一個(gè)數(shù)據(jù)。有關(guān)類String我們將在第七章講述 。§ 2.6布爾型
11、數(shù)據(jù)布爾型數(shù)據(jù)只有兩個(gè)值,true和false,且它們不對(duì)應(yīng)于任何整數(shù)值,在流控制中常用到。布爾型變量的定義如:boolean b=true; /定義b為布爾型變量,且初值為true§ 2.7舉例例2.1.下例中用到了前面提到的數(shù)據(jù)類型,并通過(guò)屏幕顯示它們的值。public class SimpleTypespublic static void main( String args )byte b=0x55;short s=0x55ff;int i=1000000;long l=0xfffL;char c='c'float f=0.23F;double d=0.7E-3
12、;boolea n bool=true;System.out.pri ntln("b = "+b);System.out.pri ntln ("s = "+s);System.out.pri ntln ("i = "+i);System.out.pri ntl n("l = "+l);System.out.pri ntln ("c = "+c);System.out.pri ntln ("f = "+f);System.out.pri ntl n("d = &quo
13、t;+d);System.out.pri ntln ("bool = "+bool); 編譯并運(yùn)行該程序,輸出結(jié)果為:> java SimpleTypesb = 85s = 22015i = 1000000l = 4095c = cf = 0.23d = 0.0007bool = true§ 2.8各類數(shù)值型數(shù)據(jù)間的混合運(yùn)算1自動(dòng)類型轉(zhuǎn)換整型、實(shí)型、字符型數(shù)據(jù)可以混合運(yùn)算。運(yùn)算中,不同類型的數(shù)據(jù)先轉(zhuǎn)化為同一類型然后進(jìn)行運(yùn)算。轉(zhuǎn)換從低級(jí)到高級(jí),轉(zhuǎn)換規(guī)則為: (byte 或 short) op int宀 int (byte 或 short 或 int) op l
14、ong long (byte 或 short 或 int 或 long) op floatfloat (byte 或 short 或 int 或 long 或 float) op doubledouble char op int int其中,箭頭左邊表示參與運(yùn)算的數(shù)據(jù)類型,op為運(yùn)算符(如加、減、乘、除等),右邊表示轉(zhuǎn)換成的進(jìn)行運(yùn)算的數(shù)據(jù)類型。例2.2public class Promotio npublic static void main( String args )byte b=10;char c='a'int i=90;long l=555L;float f=3.5f;double d=1.234;float f1=f*b;/ float * byte - > floatint i1=c+i;/ char + int
溫馨提示
- 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è)生就業(yè)安置與就業(yè)技能培訓(xùn)與就業(yè)保障服務(wù)合同
- 二零二五年度股份轉(zhuǎn)讓與新能源項(xiàng)目投資合作框架協(xié)議
- 二零二五年度排煙道安裝與通風(fēng)系統(tǒng)優(yōu)化合同
- 運(yùn)動(dòng)會(huì)發(fā)言稿100字
- 2025年臨滄道路貨運(yùn)運(yùn)輸從業(yè)資格證模擬考試
- 結(jié)對(duì)子發(fā)言稿
- 解除與終止勞動(dòng)合同
- 高中家長(zhǎng)會(huì) 揚(yáng)帆起航追逐夢(mèng)想課件-高三上學(xué)期家長(zhǎng)會(huì)
- 國(guó)際貿(mào)易實(shí)務(wù)練習(xí)題目
- 詩(shī)歌理解啟蒙:鄉(xiāng)愁英語(yǔ)語(yǔ)法解析課
- 建筑地基處理技術(shù)規(guī)范JGJ79-2012
- 印象主義、后印象主義課件
- 《中華傳統(tǒng)文化》第1課-炎黃始-華夏悠遠(yuǎn)教學(xué)課件
- 日常監(jiān)督檢查表
- 隊(duì)列訓(xùn)練教程ppt課件(PPT 86頁(yè))
- 第三章-農(nóng)村公共管理組織課件
- 注塑員工培訓(xùn)
- 《麻精藥品培訓(xùn)》ppt課件
- JMP操作簡(jiǎn)要培訓(xùn)
- 勝利油田壓驅(qū)技術(shù)工藝研究進(jìn)展及下步工作方向
- 研究生復(fù)試匯報(bào)ppt
評(píng)論
0/150
提交評(píng)論