資源描述:
《java語言基礎(chǔ)-數(shù)組向量字符串.ppt》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第二章Java語言基礎(chǔ)Contents1.數(shù)組3.向量2.字符串NCEPU復(fù)合數(shù)據(jù)類型復(fù)合數(shù)據(jù)類型早期的程序設(shè)計語言把變量看作是孤立的東西,例如我們往往用三個整數(shù)變量day,month和year來表示日期intday,month,year;雖然這種方法容易理解,但是有兩個明顯的缺點:NCEPU復(fù)合數(shù)據(jù)類型程序若要處理多個日期,則需要更多的說明,例如要保存兩個生日,則需要:birthday1,birthmonth1,birthyear1birthday2,birthmonth2,birthyear2該程序因使用了多個變量而變得混亂,并且占用了過多的命名空間。每個變量都是獨立的,
2、而其實它們應(yīng)當(dāng)是某一個日期的組成部分,這樣定義無法體現(xiàn)整體的聯(lián)系。NCEPU復(fù)合數(shù)據(jù)類型復(fù)合數(shù)據(jù)類型由程序員在源程序中定義,把描述整個對象各個不同方面的變量放到一個定義中,建立該模型。一旦有了定義,就可以使用該類型名來創(chuàng)建變量。Java是面向?qū)ο蟮某绦蛟O(shè)計語言,它為用戶提供的復(fù)合數(shù)據(jù)類型即類和接口。NCEPU復(fù)合數(shù)據(jù)類型引用類型(referencetype即復(fù)合類型)引用型變量的值與基本類型(簡單類型)變量不同,變量值是指向內(nèi)存空間的引用(地址)。所指向的內(nèi)存中保存著變量所表示的一個值或一組值。引用在其他語言中稱為指針或內(nèi)存地址。Java不支持顯式使用內(nèi)存地址,而必須通過變量名
3、對某個內(nèi)存空間地址進(jìn)行訪問。NCEPU兩種類型變量的不同處理inta;a=12;MyDatetoday;today.day=14;?引用型變量在聲明后必須通過實例化開辟數(shù)據(jù)空間,才能對變量所指向的對象進(jìn)行訪問.MyDatetoday;today=newMyDate();today.day=14;NCEPU關(guān)于對象和對象的“引用”Strings=newString(“aString”);AnobjectofStringiscreatedTheobjectisinitializedw/”aString”AvariableashandletoStringiscreatedTheval
4、ueofthehandlevariableisassigntotheobjectStrings;saStringNCEPU數(shù)組和字符串第一節(jié)數(shù)組數(shù)組概述一維數(shù)組二維數(shù)組NCEPU數(shù)組概述數(shù)組,是由數(shù)目固定的、相同類型的元素組成的有序集合,每個元素相當(dāng)于一個變量。在Java中,數(shù)組是最簡單的復(fù)合數(shù)據(jù)類型NCEPU數(shù)組概述數(shù)組元素可以是任意類型,可以是簡單類型,也可以是引用類型。訪問數(shù)組中的某個元素,可以通過數(shù)組名加下標(biāo)的形式,例如:a[4]。數(shù)組下標(biāo)的個數(shù)就是數(shù)組的維數(shù):有一個下標(biāo)就是一維數(shù)組,有兩個下標(biāo)就是二維數(shù)組,依次類推。NCEPU一維數(shù)組一個一維數(shù)組實際上是一列相同類型的
5、變量一維數(shù)組的聲明一維數(shù)組的創(chuàng)建一維數(shù)組初始化數(shù)組邊界NCEPUanull一維數(shù)組的聲明聲明一維數(shù)組的格式是:<類型><數(shù)組名>[];或<類型>[]<數(shù)組名>;例如:inta[]或:Dated[]例如:int[]a或:Date[]dinta[5]是不正確的要聲明成:inta[]或:int[]a此時的數(shù)組a中的元素個數(shù)沒有確定,系統(tǒng)沒有創(chuàng)建具體的數(shù)組對象,而是聲明了一個指向數(shù)組的引用?NCEPU所有的引用類型都需要用new來初始化一維數(shù)組的創(chuàng)建創(chuàng)建一維數(shù)組的格式為:<數(shù)組名>=new<類型>[<長度>];Java中沒有靜態(tài)定義的數(shù)組,數(shù)組的內(nèi)存都是通過new動態(tài)分配的。例如:a=
6、newint[5];此時系統(tǒng)創(chuàng)建了具體的數(shù)組對象,為每個數(shù)組元素分配了具體的內(nèi)存單元,并進(jìn)行了默認(rèn)的初始化0x03456789a0a[0]0a[1]0a[2]0a[3]0a[4]a[]=newint[5];?NCEPU一維數(shù)組的創(chuàng)建數(shù)組的聲明和創(chuàng)建可以同時進(jìn)行:<類型><數(shù)組名>[]=new<類型>[<長度>];或<類型>[]<數(shù)組名>=new<類型>[<長度>];例如:inta[]=newint[5];或:int[]a=newint[5];NCEPUpublicclassTest{publicstaticvoidmain(Stringargs[]){int[]s;s=newi
7、nt[5];for(inti=0;i<5;i++){s[i]=2*i+1}}}一維數(shù)組NCEPU一維數(shù)組publicclassTest{publicstaticvoidmain(Stringargs[]){int[]s;s=newint[5];for(inti=0;i<5;i++){s[i]=2*i+1}}}NCEPU一維數(shù)組publicclassTest{publicstaticvoidmain(Stringargs[]){int[]s;s=newint[5];for(inti=0;i<5