ch3Java語(yǔ)言基礎(chǔ)ppt課件_第1頁(yè)
ch3Java語(yǔ)言基礎(chǔ)ppt課件_第2頁(yè)
ch3Java語(yǔ)言基礎(chǔ)ppt課件_第3頁(yè)
ch3Java語(yǔ)言基礎(chǔ)ppt課件_第4頁(yè)
ch3Java語(yǔ)言基礎(chǔ)ppt課件_第5頁(yè)
已閱讀5頁(yè),還剩87頁(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)介

1、3Java言語(yǔ)根底言語(yǔ)根底2-2Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.目的目的經(jīng)過(guò)本章學(xué)習(xí),您將可以經(jīng)過(guò)本章學(xué)習(xí),您將可以:熟習(xí)熟習(xí)Java用于數(shù)字、字符及類似的簡(jiǎn)單數(shù)據(jù)地的數(shù)據(jù)類型用于數(shù)字、字符及類似的簡(jiǎn)單數(shù)據(jù)地的數(shù)據(jù)類型。這些類型稱為根本類型。這些類型稱為根本類型。了解賦值語(yǔ)句及表達(dá)式。了解賦值語(yǔ)句及表達(dá)式。了解了解Java分支語(yǔ)句,循環(huán)的概念。分支語(yǔ)句,循環(huán)的概念。了解數(shù)給以及如何在簡(jiǎn)單的了解數(shù)給以及如何在簡(jiǎn)單的Java程序中運(yùn)用數(shù)組。程序中運(yùn)用數(shù)組。學(xué)習(xí)如何采用數(shù)組作為參數(shù),以及如何定義方法以前往數(shù)學(xué)習(xí)如何采用數(shù)組作為參數(shù),

2、以及如何定義方法以前往數(shù)組。組。熟習(xí)多維數(shù)組。熟習(xí)多維數(shù)組。2-3Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.JavaJava標(biāo)識(shí)符標(biāo)識(shí)符(identifier)(identifier)只能包含字母、數(shù)字只能包含字母、數(shù)字09和下劃線和下劃線_).首字符不能是數(shù)字。首字符不能是數(shù)字。不能包含空格或任何其他字符,比如點(diǎn)號(hào)不能包含空格或任何其他字符,比如點(diǎn)號(hào).或或*。Java是區(qū)分大小寫的。是區(qū)分大小寫的。名字的長(zhǎng)度沒(méi)有限制。名字的長(zhǎng)度沒(méi)有限制。關(guān)鍵字不能用作類、對(duì)象或除其原義之外的任何事物的名關(guān)鍵字不能用作類、對(duì)象或除其原義之外的任何事物的

3、名字。字。不應(yīng)該在標(biāo)識(shí)符中運(yùn)用不應(yīng)該在標(biāo)識(shí)符中運(yùn)用$符號(hào)。符號(hào)。2-4Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.標(biāo)識(shí)符用法舉例標(biāo)識(shí)符用法舉例numberOfBaskets.NumberOfBaskets, number_of_baskets通常用大小字母來(lái)通常用大小字母來(lái)“斷開(kāi)由多個(gè)單詞組成的名字。斷開(kāi)由多個(gè)單詞組成的名字。inputStream YourClass CarWash hotCar不合法:不合法:My.class netscape go-team 7eleven2-5Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010

4、. All rights reserved.關(guān)鍵字關(guān)鍵字關(guān)鍵字也被稱為保管字關(guān)鍵字也被稱為保管字reserved word。不能重新定義恣意關(guān)鍵字。不能重新定義恣意關(guān)鍵字。它們的含義是由它們的含義是由Java言語(yǔ)確定的,無(wú)法改動(dòng)。言語(yǔ)確定的,無(wú)法改動(dòng)。不能將恣意一個(gè)關(guān)鍵字作為變量名、方法名或類名。不能將恣意一個(gè)關(guān)鍵字作為變量名、方法名或類名。null, true ,這些單詞不被當(dāng)作關(guān)鍵字。但是,有些作,這些單詞不被當(dāng)作關(guān)鍵字。但是,有些作者會(huì)將它們列為關(guān)鍵字。保險(xiǎn)起見(jiàn),我將它們當(dāng)作關(guān)鍵者會(huì)將它們列為關(guān)鍵字。保險(xiǎn)起見(jiàn),我將它們當(dāng)作關(guān)鍵字對(duì)待,他們也應(yīng)該如此。字對(duì)待,他們也應(yīng)該如此。2-6Copy

5、right 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.JavaJava根本數(shù)據(jù)類型根本數(shù)據(jù)類型邏輯型邏輯型(boolean)文字型文字型(char)整數(shù)類型整數(shù)類型(byte 、short、 int 和和long)浮點(diǎn)型浮點(diǎn)型(float double)2-7Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.邏輯型邏輯型(boolean)(boolean)只需兩個(gè)值,即只需兩個(gè)值,即true(真真),false(假假)命名命名boolean變量時(shí),要選擇在變量時(shí),要選擇在boolean表達(dá)式的值為表達(dá)式的值

6、為true時(shí)也為真的表述方式。時(shí)也為真的表述方式。要防止運(yùn)用那些不能很清楚地描畫變量值含義的名字要防止運(yùn)用那些不能很清楚地描畫變量值含義的名字比如isPositive 和systemAreOK等。這樣,將其用在while循環(huán)、if-else語(yǔ)句或其他控制語(yǔ)句中時(shí),他就很容易了解其含義。不要運(yùn)用numberSign 、systemStatus這樣的名字。2-8Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.文字型文字型(char)(char)用于單個(gè)字符,比如字母或百分號(hào)。用于單個(gè)字符,比如字母或百分號(hào)。Java程序中給出一個(gè)字符時(shí),會(huì)將其包圍

7、在單引號(hào)中程序中給出一個(gè)字符時(shí),會(huì)將其包圍在單引號(hào)中,而不是包圍在比引號(hào)中。,而不是包圍在比引號(hào)中。在字符兩邊運(yùn)用的是一樣的援用符號(hào)。在字符兩邊運(yùn)用的是一樣的援用符號(hào)。char symbol;Symbol=A;System.out.println(symbol);2-9Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.本義字符本義字符The word “Java names a language, not just a drink!”雙引號(hào)雙引號(hào)單引號(hào)單引號(hào)反斜杠反斜杠n新行。轉(zhuǎn)到下一行的起始位置新行。轉(zhuǎn)到下一行的起始位置r回車符。轉(zhuǎn)到當(dāng)前行的

8、起始位置回車符。轉(zhuǎn)到當(dāng)前行的起始位置t制表符。添加空格,直到下一個(gè)制表位為止制表符。添加空格,直到下一個(gè)制表位為止以反斜杠指示的特殊字符。以反斜杠指示的特殊字符。每個(gè)本義字符都寫成兩個(gè)符號(hào),但實(shí)踐每個(gè)本義字符都寫成兩個(gè)符號(hào),但實(shí)踐2-10Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.StringString類類Java中沒(méi)有用于字符串的根本類型。中沒(méi)有用于字符串的根本類型。String類型的值是援用字符串,它是被當(dāng)作一個(gè)單獨(dú)項(xiàng)類型的值是援用字符串,它是被當(dāng)作一個(gè)單獨(dú)項(xiàng)處置的字符序列。處置的字符序列??梢杂每梢杂?運(yùn)算符拼接恣意數(shù)量的運(yùn)算符拼

9、接恣意數(shù)量的String對(duì)象。甚至可以對(duì)象。甚至可以經(jīng)過(guò)經(jīng)過(guò)+運(yùn)算符將一個(gè)運(yùn)算符將一個(gè)String變量和任何其他類型的對(duì)象變量和任何其他類型的對(duì)象拼接起來(lái)。結(jié)果總是一個(gè)拼接起來(lái)。結(jié)果總是一個(gè)String對(duì)象。對(duì)象。1.String solution=“The answer is “ + 42;2.String name=“xiaoshenyang; String greeting = “Hi + name; System.out.println(greeting);2-11Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.整數(shù)類型整數(shù)類型整數(shù)類

10、型:整數(shù)類型:byte, short, int 和和 long類型長(zhǎng)度取值范圍byte8位-27 27-1short16位 -215 215-1int32位 -231 231-1long64位 -263 263-12-12Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.整型常量整型常量Java中缺省整型是中缺省整型是 int有有3種方式:十進(jìn)制、八進(jìn)制、十六進(jìn)制種方式:十進(jìn)制、八進(jìn)制、十六進(jìn)制十進(jìn)制 八進(jìn)制十六進(jìn)制_int 2407710XAB07long 24L0771L0XAB07L2-13Copyright 山西大學(xué)商務(wù)學(xué)院 2009-

11、2010. All rights reserved.浮點(diǎn)型浮點(diǎn)型浮點(diǎn)型:浮點(diǎn)型:float 和和 double長(zhǎng)度:長(zhǎng)度: float : 32位位 double: 64位位雙精度類型雙精度類型double比單精度類型比單精度類型float具有更高的精度具有更高的精度和更大的表示范圍和更大的表示范圍,但但float類型具有速度快、占用內(nèi)存類型具有速度快、占用內(nèi)存小的優(yōu)點(diǎn)。小的優(yōu)點(diǎn)。浮點(diǎn)型變量的默許值是浮點(diǎn)型變量的默許值是0.0。常量缺省是常量缺省是 double 類型。類型。2-14Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.變量變量程序

12、中的變量程序中的變量(variable)是用來(lái)存儲(chǔ)數(shù)字和字母這樣的是用來(lái)存儲(chǔ)數(shù)字和字母這樣的數(shù)據(jù)的??梢砸暈槟撤N類型的容器。數(shù)據(jù)的。可以視為某種類型的容器。變量中的數(shù)字、字母或其他數(shù)據(jù)項(xiàng)稱為它的值。值是可變量中的數(shù)字、字母或其他數(shù)據(jù)項(xiàng)稱為它的值。值是可以改動(dòng)的。以改動(dòng)的。變量是作為存儲(chǔ)單元實(shí)現(xiàn)的。每個(gè)變量都分配了一個(gè)存變量是作為存儲(chǔ)單元實(shí)現(xiàn)的。每個(gè)變量都分配了一個(gè)存儲(chǔ)單元。在為其賦值時(shí),該值就被放置在變量的存儲(chǔ)單儲(chǔ)單元。在為其賦值時(shí),該值就被放置在變量的存儲(chǔ)單元中。元中。變量的命名規(guī)那么遵照變量的命名規(guī)那么遵照J(rèn)ava標(biāo)識(shí)符拼寫規(guī)那么。除此標(biāo)識(shí)符拼寫規(guī)那么。除此之外,還應(yīng)該選擇一些有協(xié)助的變量

13、名。之外,還應(yīng)該選擇一些有協(xié)助的變量名。運(yùn)用運(yùn)用Java程序中的每個(gè)變量之前都必需先對(duì)其進(jìn)展聲程序中的每個(gè)變量之前都必需先對(duì)其進(jìn)展聲明。明。2-15Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.變量的作用域變量的作用域部分變量。在一個(gè)方法或一對(duì)部分變量。在一個(gè)方法或一對(duì) 表示的代碼塊內(nèi)定義。表示的代碼塊內(nèi)定義。也稱為自動(dòng)變量或暫時(shí)變量。作用域是所在的方法或代也稱為自動(dòng)變量或暫時(shí)變量。作用域是所在的方法或代碼塊。碼塊。類成員變量。在方法外聲明且屬于一個(gè)類的定義體的變類成員變量。在方法外聲明且屬于一個(gè)類的定義體的變量。作用域是整個(gè)類。量。作用域

14、是整個(gè)類。方法參數(shù)。方法調(diào)用時(shí)傳送的參數(shù)。作用域是所在的方方法參數(shù)。方法調(diào)用時(shí)傳送的參數(shù)。作用域是所在的方法。法。異常處置器參數(shù)。是異常處置器參數(shù)。是catch語(yǔ)句塊的入口參數(shù)。作用域語(yǔ)句塊的入口參數(shù)。作用域是是catch語(yǔ)句后由語(yǔ)句后由 表示的語(yǔ)句塊。表示的語(yǔ)句塊。2-16Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.變量變量塊內(nèi)闡明的變量將屏蔽其所在類定義的同名變量。塊內(nèi)闡明的變量將屏蔽其所在類定義的同名變量。同一塊中假設(shè)定義兩個(gè)同名變量那么引起沖突。同一塊中假設(shè)定義兩個(gè)同名變量那么引起沖突。Java允許屏蔽,但沖突會(huì)引起編譯錯(cuò)誤。允許

15、屏蔽,但沖突會(huì)引起編譯錯(cuò)誤。2-17Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.變量的初始化變量的初始化類成員變量是系統(tǒng)自動(dòng)進(jìn)展初始化。類成員變量是系統(tǒng)自動(dòng)進(jìn)展初始化。部分變量必需在運(yùn)用前手工賦初值進(jìn)展初始化。如部分部分變量必需在運(yùn)用前手工賦初值進(jìn)展初始化。如部分變量沒(méi)有經(jīng)過(guò)初始化,就將產(chǎn)生編譯錯(cuò)誤。變量沒(méi)有經(jīng)過(guò)初始化,就將產(chǎn)生編譯錯(cuò)誤。2-18Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.變量變量創(chuàng)建一個(gè)對(duì)象后,運(yùn)用創(chuàng)建一個(gè)對(duì)象后,運(yùn)用newnew運(yùn)算符分配存儲(chǔ)空間時(shí)運(yùn)算符分配存儲(chǔ)空

16、間時(shí),系統(tǒng)按下表中的值自動(dòng)初始化成員變量。,系統(tǒng)按下表中的值自動(dòng)初始化成員變量。類型類型初始值初始值類型類型初始值初始值byte(byte)0double0.0short(short)0charu000(NULL)int0booleanfalselong0L所有引用類型所有引用類型nullfloat0.0f2-19Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.變量變量自動(dòng)變量在運(yùn)用之前必需初始化。自動(dòng)變量在運(yùn)用之前必需初始化。例:例: i n t x = ( i n t ) ( M a t h . r a n d o m ( ) i n t

17、 x = ( i n t ) ( M a t h . r a n d o m ( ) * * 1 0 0 ) ; 1 0 0 ) ;int y;int y;int z;int z;if (x 50) if (x 50) y = 9; y = 9; z = y +x; z = y +x; / / 能夠在初始化之前運(yùn)用導(dǎo)致編譯錯(cuò)誤能夠在初始化之前運(yùn)用導(dǎo)致編譯錯(cuò)誤2-20Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.JavaJava操作符類別操作符類別算術(shù)運(yùn)算操作符:算術(shù)運(yùn)算操作符:+,-,*,/, %, +, - -關(guān)系操作符:關(guān)系操作符:,

18、=, , , & , |, (逐位異或,逐位異或, (按按位取反位取反邏輯操作符:邏輯操作符:&, |, !, (異或異或),&, |賦值操作符:賦值操作符:=, +=, -=, *=, /=, %=,&=, |=, =, =, =其它操作符其它操作符: ?: , , . , ( ),(type), new, instanceof2-21Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.程序程序 3-1 3-1class Customer /* 闡明變量的作用域闡明變量的作用域*/public static vo

19、id main(String args) Customer customer = new Customer();String name = “John Smith; String name = “Tom David; = name; System.out.println( “The customers name: +);private String name;2-22Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.邏輯操作符與位操作符邏輯操作符與位操作符邏輯操作符與位操作符一樣的,根據(jù)操作

20、數(shù)斷定是何種邏輯操作符與位操作符一樣的,根據(jù)操作數(shù)斷定是何種運(yùn)算符運(yùn)算符 &, | - 稱為不短路與、或;稱為不短路與、或;&,| - 稱為短路與、或。稱為短路與、或。2-23Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.右移操作符右移操作符 和和 :帶符號(hào)右移:帶符號(hào)右移1010 2 111010. :無(wú)符號(hào)右移,以:無(wú)符號(hào)右移,以0 填充填充1010 2 001010 .2-24Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.Java Java 強(qiáng)迫類型轉(zhuǎn)換強(qiáng)迫類型轉(zhuǎn)換

21、JavaJava言語(yǔ)不支持變量類型間的恣意轉(zhuǎn)換,有時(shí)必需顯式言語(yǔ)不支持變量類型間的恣意轉(zhuǎn)換,有時(shí)必需顯式地進(jìn)展變量類型的轉(zhuǎn)換。地進(jìn)展變量類型的轉(zhuǎn)換。普通方式:普通方式:(type) expression(type) expression例:例:(float)x/2(float)x/2對(duì)強(qiáng)迫類型轉(zhuǎn)換的限制:對(duì)強(qiáng)迫類型轉(zhuǎn)換的限制:整型與浮點(diǎn)型可以相互轉(zhuǎn)換,但根本類型和數(shù)組、對(duì)整型與浮點(diǎn)型可以相互轉(zhuǎn)換,但根本類型和數(shù)組、對(duì)象等復(fù)合類型之間不能相互轉(zhuǎn)換。象等復(fù)合類型之間不能相互轉(zhuǎn)換。2-25Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.表達(dá)式的提升

22、和轉(zhuǎn)換表達(dá)式的提升和轉(zhuǎn)換例例:long bigval = 6; int smallval = 99L; float z = 12.414F; float z1 = 12.414; /6是整型量,所是整型量,所以該語(yǔ)句正確以該語(yǔ)句正確/99L是長(zhǎng)整型量是長(zhǎng)整型量, smallval是是int型型量量,賦值不相容,賦值不相容,該語(yǔ)句錯(cuò)誤該語(yǔ)句錯(cuò)誤/12.414F是浮點(diǎn)是浮點(diǎn)量量,該語(yǔ)句正確該語(yǔ)句正確/12.414是雙精度量是雙精度量,不能賦給單精度變不能賦給單精度變量量z1。該語(yǔ)句錯(cuò)誤。該語(yǔ)句錯(cuò)誤2-26Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserv

23、ed.表達(dá)式的提升和轉(zhuǎn)換表達(dá)式的提升和轉(zhuǎn)換顯式轉(zhuǎn)換如下:顯式轉(zhuǎn)換如下:long bigValue = 99L;int squashed = (int) (bigValue);轉(zhuǎn)換時(shí),目的類型用括號(hào)括起來(lái),放到要修正的表達(dá)式的轉(zhuǎn)換時(shí),目的類型用括號(hào)括起來(lái),放到要修正的表達(dá)式的前面。前面。 2-27Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.流控制流控制語(yǔ)句是語(yǔ)句是Java的最小執(zhí)行單位,語(yǔ)句間以分號(hào)的最小執(zhí)行單位,語(yǔ)句間以分號(hào);作為分隔作為分隔符。符。2-28Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights

24、reserved.表達(dá)式語(yǔ)句表達(dá)式語(yǔ)句 下面是一些表達(dá)式語(yǔ)句:下面是一些表達(dá)式語(yǔ)句:customer1 = new Customer();customer1 = new Customer();point2 = new Point();point2 = new Point();x = 12;x = 12;x+;x+;2-29Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.表達(dá)式語(yǔ)句表達(dá)式語(yǔ)句方法調(diào)用通常前往一個(gè)值,普通用在表達(dá)式中。有的方方法調(diào)用通常前往一個(gè)值,普通用在表達(dá)式中。有的方法調(diào)用可直接當(dāng)作語(yǔ)句。法調(diào)用可直接當(dāng)作語(yǔ)句。如:如:Syst

25、em.out.println(“Hello World!);2-30Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.塊塊塊是一對(duì)花括號(hào)塊是一對(duì)花括號(hào)“和和“括起來(lái)的語(yǔ)句組。括起來(lái)的語(yǔ)句組。如,如, Point point1 = new Point();int x = point1.x; 第一個(gè)塊是空塊,其中不含任何語(yǔ)句。第二個(gè)塊含兩條語(yǔ)第一個(gè)塊是空塊,其中不含任何語(yǔ)句。第二個(gè)塊含兩條語(yǔ)句。句。方法體是一個(gè)塊。塊還用在流控制的語(yǔ)句中,如方法體是一個(gè)塊。塊還用在流控制的語(yǔ)句中,如if語(yǔ)句、語(yǔ)句、switch語(yǔ)句及循環(huán)語(yǔ)句。語(yǔ)句及循環(huán)語(yǔ)句。2-31

26、Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.分支語(yǔ)句分支語(yǔ)句 分支語(yǔ)句根據(jù)一定的條件,動(dòng)態(tài)決議程序的流程方向,分支語(yǔ)句根據(jù)一定的條件,動(dòng)態(tài)決議程序的流程方向,從程序的多個(gè)分支中選擇一個(gè)或幾個(gè)來(lái)執(zhí)行。從程序的多個(gè)分支中選擇一個(gè)或幾個(gè)來(lái)執(zhí)行。分支語(yǔ)句共有兩種:分支語(yǔ)句共有兩種:ifif語(yǔ)句和語(yǔ)句和switchswitch語(yǔ)句。語(yǔ)句。2-32Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.分支語(yǔ)句分支語(yǔ)句ifif語(yǔ)句的根本語(yǔ)法是:語(yǔ)句的根本語(yǔ)法是: if ( if (邏輯表達(dá)式邏輯表達(dá)式) )

27、 語(yǔ)句語(yǔ)句1;1; else else 語(yǔ)句語(yǔ)句2;2; ifif語(yǔ)句中的語(yǔ)句中的elseelse子句是可選的。子句是可選的。ifif關(guān)鍵字之后的邏輯表達(dá)式必需得到一個(gè)邏輯值,不能以關(guān)鍵字之后的邏輯表達(dá)式必需得到一個(gè)邏輯值,不能以數(shù)值來(lái)替代。數(shù)值來(lái)替代。 1. if 1. if語(yǔ)句語(yǔ)句2-33Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.if語(yǔ)句的含義語(yǔ)句的含義當(dāng)邏輯表達(dá)式結(jié)果為當(dāng)邏輯表達(dá)式結(jié)果為true時(shí),執(zhí)行語(yǔ)句時(shí),執(zhí)行語(yǔ)句1,然后繼續(xù)執(zhí),然后繼續(xù)執(zhí)行行if后面的語(yǔ)句。當(dāng)邏輯表達(dá)式為后面的語(yǔ)句。當(dāng)邏輯表達(dá)式為false時(shí),假設(shè)有時(shí),假設(shè)

28、有else子句,那么執(zhí)行語(yǔ)句子句,那么執(zhí)行語(yǔ)句2,否那么跳過(guò)該,否那么跳過(guò)該if語(yǔ)句,繼續(xù)執(zhí)語(yǔ)句,繼續(xù)執(zhí)行后面的語(yǔ)句。行后面的語(yǔ)句。語(yǔ)句語(yǔ)句1和語(yǔ)句和語(yǔ)句2既可以是單語(yǔ)句,也可以是語(yǔ)句塊。既可以是單語(yǔ)句,也可以是語(yǔ)句塊。if語(yǔ)句可以嵌套,嵌套時(shí),規(guī)定語(yǔ)句可以嵌套,嵌套時(shí),規(guī)定else子句屬于離它最近子句屬于離它最近的的if語(yǔ)句。語(yǔ)句。2-34Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.例例int count;count = getCount(); / 程序中定義的一個(gè)方法程序中定義的一個(gè)方法if (count 0) System.out.

29、println( “Error: count value is negative!); else System.out.println(“There will be +count +“ people for lunch today.); 2-35Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.if語(yǔ)句的嵌套語(yǔ)句的嵌套例例:if (firstVal = 0)if (secondVal = 1)firstVal+;elsefirstVal-;2-36Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved

30、.2. switch2. switch語(yǔ)句語(yǔ)句vswitch語(yǔ)句是多重分支語(yǔ)句,它的語(yǔ)法格式是:語(yǔ)句是多重分支語(yǔ)句,它的語(yǔ)法格式是:vswitch (表達(dá)式表達(dá)式) vcase c1:v語(yǔ)句組語(yǔ)句組1;break;vcase c2:v語(yǔ)句組語(yǔ)句組2;break;vvcase ck:v語(yǔ)句組語(yǔ)句組k;break;vdefault:v語(yǔ)句組語(yǔ)句組;break;v2-37Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.2. switch2. switch語(yǔ)句語(yǔ)句表達(dá)式的計(jì)算結(jié)果必需是表達(dá)式的計(jì)算結(jié)果必需是int型或字符型,即是型或字符型,即是int

31、型賦型賦值相容的。值相容的。當(dāng)用當(dāng)用byte,short或或char類型時(shí),要進(jìn)展提升。類型時(shí),要進(jìn)展提升。2-38Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.2. switch語(yǔ)句語(yǔ)句switch語(yǔ)句不允許運(yùn)用浮點(diǎn)型或語(yǔ)句不允許運(yùn)用浮點(diǎn)型或long型表達(dá)式。型表達(dá)式。c1,c2,ck是是int型或字符型常量。型或字符型常量。default子句是可子句是可選的,并且,最后一個(gè)選的,并且,最后一個(gè)break語(yǔ)句完全可以不寫。語(yǔ)句完全可以不寫。2-39Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reser

32、ved.switchswitch語(yǔ)句的語(yǔ)義語(yǔ)句的語(yǔ)義計(jì)算表達(dá)式的值,用該值依次和計(jì)算表達(dá)式的值,用該值依次和c1c1,c2c2,ckck相比較相比較。假設(shè)該值等于其中之一,那么執(zhí)行其后的語(yǔ)句組,直。假設(shè)該值等于其中之一,那么執(zhí)行其后的語(yǔ)句組,直到遇到到遇到breakbreak語(yǔ)句跳到語(yǔ)句跳到switchswitch之后的語(yǔ)句。假設(shè)沒(méi)有相之后的語(yǔ)句。假設(shè)沒(méi)有相匹配的值,那么執(zhí)行匹配的值,那么執(zhí)行defaultdefault之后的語(yǔ)句。之后的語(yǔ)句。2-40Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.switchswitch語(yǔ)句的語(yǔ)義語(yǔ)句的語(yǔ)義

33、switchswitch語(yǔ)句中各語(yǔ)句中各cici之后的語(yǔ)句既可以是單語(yǔ)句,也可以之后的語(yǔ)句既可以是單語(yǔ)句,也可以是語(yǔ)句組。是語(yǔ)句組。不論執(zhí)行哪個(gè)分支,程序流都會(huì)順序執(zhí)行下去,直到遇不論執(zhí)行哪個(gè)分支,程序流都會(huì)順序執(zhí)行下去,直到遇到到breakbreak語(yǔ)句為止。語(yǔ)句為止。2-41Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.2. switch2. switch語(yǔ)句例如語(yǔ)句例如例例:/ colorNum是整型變量是整型變量switch (colorNum) case 0:setBackground(Color.red);break;case

34、1:setBackground(Color.green); break;default:setBackground(Color.black);break;2-42Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.2. switch語(yǔ)句例如語(yǔ)句例如switchswitch語(yǔ)句和語(yǔ)句和ifif語(yǔ)句可以相互替代。語(yǔ)句可以相互替代。例例:if (colorum = 0)if (colorum = 0)setBackground(Color.red);setBackground(Color.red);else if (colorNum = 1)else

35、if (colorNum = 1)setBackground(Color.green);setBackground(Color.green);elseelsesetBackground(Color.black);setBackground(Color.black);2-43Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.循環(huán)語(yǔ)句循環(huán)語(yǔ)句 循環(huán)語(yǔ)句控制程序流多次執(zhí)行一段程序。循環(huán)語(yǔ)句控制程序流多次執(zhí)行一段程序。JavaJava言語(yǔ)提供三種循環(huán)語(yǔ)句:言語(yǔ)提供三種循環(huán)語(yǔ)句:forfor語(yǔ)句、語(yǔ)句、whilewhile語(yǔ)句和語(yǔ)句和dodo語(yǔ)句。語(yǔ)句。

36、 2-44Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.1.for語(yǔ)句語(yǔ)句forfor語(yǔ)句的語(yǔ)法格式是:語(yǔ)句的語(yǔ)法格式是:for (for (初始語(yǔ)句初始語(yǔ)句; ;邏輯表達(dá)式邏輯表達(dá)式; ;迭代語(yǔ)句迭代語(yǔ)句) ) 語(yǔ)句語(yǔ)句; ;初始語(yǔ)句和迭代語(yǔ)句中可以含有多個(gè)語(yǔ)句,各語(yǔ)句間以逗初始語(yǔ)句和迭代語(yǔ)句中可以含有多個(gè)語(yǔ)句,各語(yǔ)句間以逗號(hào)分隔。號(hào)分隔。forfor語(yǔ)句括號(hào)內(nèi)的三部分都是可選的,邏輯表達(dá)式為空時(shí),語(yǔ)句括號(hào)內(nèi)的三部分都是可選的,邏輯表達(dá)式為空時(shí),默許規(guī)定為恒真默許規(guī)定為恒真2-45Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010.

37、 All rights reserved.forfor語(yǔ)句的語(yǔ)義語(yǔ)句的語(yǔ)義先執(zhí)行初始語(yǔ)句,判別邏輯表達(dá)式的值,當(dāng)邏輯表達(dá)式先執(zhí)行初始語(yǔ)句,判別邏輯表達(dá)式的值,當(dāng)邏輯表達(dá)式為真時(shí),執(zhí)行循環(huán)體語(yǔ)句,執(zhí)行迭代語(yǔ)句,然后再去判為真時(shí),執(zhí)行循環(huán)體語(yǔ)句,執(zhí)行迭代語(yǔ)句,然后再去判別邏輯表達(dá)式的值。這個(gè)過(guò)程不斷進(jìn)展下去,直到邏輯別邏輯表達(dá)式的值。這個(gè)過(guò)程不斷進(jìn)展下去,直到邏輯表達(dá)式的值為假時(shí),循環(huán)終了,轉(zhuǎn)到表達(dá)式的值為假時(shí),循環(huán)終了,轉(zhuǎn)到for之后的語(yǔ)句。之后的語(yǔ)句。for語(yǔ)句中定義的循環(huán)控制變量只在該塊內(nèi)有效。語(yǔ)句中定義的循環(huán)控制變量只在該塊內(nèi)有效。2-46Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2

38、010. All rights reserved.循環(huán)語(yǔ)句例如循環(huán)語(yǔ)句例如 for (int i = 0; i 3; i+) System.out.println(“Are you finished yet?); System.out.println(“Finally!);2-47Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.結(jié)果結(jié)果Are you finished yet?Are you finished yet?Are you finished yet?Finally!2-48Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010.

39、All rights reserved.循環(huán)語(yǔ)句例如循環(huán)語(yǔ)句例如for ( ; ; )System.out.println(“Always print!);該語(yǔ)句等價(jià)于:該語(yǔ)句等價(jià)于:for ( ; true ; )System.out.println(“Always print!);這段循環(huán)不會(huì)停頓。這段循環(huán)不會(huì)停頓。2-49Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.循環(huán)語(yǔ)句例如循環(huán)語(yǔ)句例如int sumi = 0, sumj = 0;for ( int i = 0, j = 0; j 10; i+, j+) sumi += i;su

40、mj += j;2-50Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.2. while2. while循環(huán)循環(huán)while循環(huán)的語(yǔ)法是:循環(huán)的語(yǔ)法是:while (邏輯表達(dá)式邏輯表達(dá)式) 語(yǔ)句語(yǔ)句;while語(yǔ)句中的邏輯表達(dá)式不能用數(shù)值來(lái)替代。語(yǔ)句中的邏輯表達(dá)式不能用數(shù)值來(lái)替代。2-51Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.2. while2. while循環(huán)循環(huán)whilewhile語(yǔ)句的語(yǔ)義是:語(yǔ)句的語(yǔ)義是:計(jì)算邏輯表達(dá)式,當(dāng)邏輯表達(dá)式為真時(shí),反復(fù)執(zhí)行循環(huán)體計(jì)算邏輯表達(dá)式,當(dāng)邏輯

41、表達(dá)式為真時(shí),反復(fù)執(zhí)行循環(huán)體語(yǔ)句,直到邏輯表達(dá)式為假時(shí)終了。語(yǔ)句,直到邏輯表達(dá)式為假時(shí)終了。2-52Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.whilewhile語(yǔ)句的語(yǔ)義語(yǔ)句的語(yǔ)義假設(shè)第一次檢查時(shí)邏輯表達(dá)式為假,那么循環(huán)體語(yǔ)句一假設(shè)第一次檢查時(shí)邏輯表達(dá)式為假,那么循環(huán)體語(yǔ)句一次也不執(zhí)行。次也不執(zhí)行。假設(shè)邏輯表達(dá)式一直為真,那么循環(huán)不會(huì)終止。假設(shè)邏輯表達(dá)式一直為真,那么循環(huán)不會(huì)終止。2-53Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.while循環(huán)例如循環(huán)例如例例:int i =

42、0int i = 0;while (i 3) while (i 3) System.out.println(“Are you finished yet? System.out.println(“Are you finished yet?);); i+; i+; System.out.println(“Finally!System.out.println(“Finally!););2-54Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.3. do循環(huán)語(yǔ)句循環(huán)語(yǔ)句do語(yǔ)句的語(yǔ)法格式是:語(yǔ)句的語(yǔ)法格式是: do 語(yǔ)句語(yǔ)句; while (邏輯表達(dá)式

43、邏輯表達(dá)式);2-55Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.3. do循環(huán)語(yǔ)句循環(huán)語(yǔ)句dodo語(yǔ)句的語(yǔ)義是:語(yǔ)句的語(yǔ)義是:首先執(zhí)行循環(huán)體語(yǔ)句,然后斷定邏輯表達(dá)式的值,當(dāng)表達(dá)首先執(zhí)行循環(huán)體語(yǔ)句,然后斷定邏輯表達(dá)式的值,當(dāng)表達(dá)式為真時(shí),反復(fù)執(zhí)行循環(huán)體語(yǔ)句,直到表達(dá)式為假時(shí)終式為真時(shí),反復(fù)執(zhí)行循環(huán)體語(yǔ)句,直到表達(dá)式為假時(shí)終了。了。不論邏輯表達(dá)式的值是真是假,不論邏輯表達(dá)式的值是真是假,dodo循環(huán)中的循環(huán)體都至少循環(huán)中的循環(huán)體都至少執(zhí)行一次。執(zhí)行一次。2-56Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights

44、 reserved.do循環(huán)例如循環(huán)例如 do int i = 0; do System.out.println(“Are you finished yet?); i+; while (i 3); System.out.println(“Finally!);2-57Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.循環(huán)語(yǔ)句循環(huán)語(yǔ)句for、while及及do語(yǔ)句可相互替代。語(yǔ)句可相互替代。例如:例如: do 語(yǔ)句語(yǔ)句1;while (邏輯表達(dá)式邏輯表達(dá)式);等價(jià)于:等價(jià)于: 語(yǔ)句語(yǔ)句1; while(邏輯表達(dá)式邏輯表達(dá)式) 語(yǔ)句語(yǔ)句1;2-58C

45、opyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.特殊的流控制語(yǔ)句特殊的流控制語(yǔ)句JavaJava言語(yǔ)運(yùn)用兩條特殊的流控制語(yǔ)句:言語(yǔ)運(yùn)用兩條特殊的流控制語(yǔ)句:BreakBreakcontinuecontinue用在分支語(yǔ)句或循環(huán)語(yǔ)句中。用在分支語(yǔ)句或循環(huán)語(yǔ)句中。2-59Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.特殊的流控制語(yǔ)句特殊的流控制語(yǔ)句1. 1. 標(biāo)號(hào)標(biāo)號(hào)標(biāo)號(hào)可以放在標(biāo)號(hào)可以放在forfor,whilewhile或或dodo語(yǔ)句之前。語(yǔ)句之前。語(yǔ)法格式為:語(yǔ)法格式為:標(biāo)號(hào)標(biāo)號(hào): :語(yǔ)

46、句語(yǔ)句; ;2-60Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.特殊的流控制語(yǔ)句特殊的流控制語(yǔ)句2. break2. break語(yǔ)句語(yǔ)句breakbreak語(yǔ)句可用于語(yǔ)句可用于switchswitch,forfor,whilewhile及及dodo語(yǔ)句中。語(yǔ)句中。語(yǔ)義:跳過(guò)本塊中余下的一切語(yǔ)句,轉(zhuǎn)到塊尾,執(zhí)行其后語(yǔ)義:跳過(guò)本塊中余下的一切語(yǔ)句,轉(zhuǎn)到塊尾,執(zhí)行其后的語(yǔ)句。的語(yǔ)句。2-61Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.breakbreak語(yǔ)句例如語(yǔ)句例如for (int i

47、 = 0; i 100; i+) if ( i = 5 )break;System.out.println(“i= +i);2-62Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.特殊的流控制語(yǔ)句特殊的流控制語(yǔ)句break語(yǔ)句還可以和標(biāo)號(hào)結(jié)合運(yùn)用。語(yǔ)句還可以和標(biāo)號(hào)結(jié)合運(yùn)用。語(yǔ)法格式為:語(yǔ)法格式為:break 標(biāo)號(hào)標(biāo)號(hào);語(yǔ)義:是跳出標(biāo)號(hào)所標(biāo)志的語(yǔ)句塊,繼續(xù)執(zhí)行其后的語(yǔ)句語(yǔ)義:是跳出標(biāo)號(hào)所標(biāo)志的語(yǔ)句塊,繼續(xù)執(zhí)行其后的語(yǔ)句。2-63Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.breakbrea

48、k語(yǔ)句例如語(yǔ)句例如class Break public static void main (String args)int i, j = 0, k = 0, h;label1:for( i = 0; i 100; i+, j += 2)label2:label3:switch( i%2 ) case 1: h=1; break;default: h=0; break; if( i=50 )break label1; System.out.println(“i= +i);2-64Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.特殊的流控制語(yǔ)句特

49、殊的流控制語(yǔ)句3. continue3. continue語(yǔ)句語(yǔ)句在循環(huán)語(yǔ)句中,在循環(huán)語(yǔ)句中,continuecontinue可以立刻終了當(dāng)次循環(huán)而執(zhí)行下可以立刻終了當(dāng)次循環(huán)而執(zhí)行下一次循環(huán),當(dāng)然執(zhí)行前先判別循環(huán)條件能否滿足。一次循環(huán),當(dāng)然執(zhí)行前先判別循環(huán)條件能否滿足。continuecontinue語(yǔ)句也可以和標(biāo)號(hào)一同運(yùn)用。語(yǔ)句也可以和標(biāo)號(hào)一同運(yùn)用。語(yǔ)法格式為語(yǔ)法格式為: :continue continue 標(biāo)號(hào)標(biāo)號(hào); ;2-65Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.continue語(yǔ)句例如語(yǔ)句例如outer:for (int

50、i = 0; i 10; i+) for (int j = 0; j i ) System.out.println();continue outer;System.out.print(“*);2-66Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.數(shù)組數(shù)組數(shù)組闡明數(shù)組闡明一個(gè)數(shù)組是一系列的匿名變量,數(shù)組中的元素可經(jīng)過(guò)下一個(gè)數(shù)組是一系列的匿名變量,數(shù)組中的元素可經(jīng)過(guò)下標(biāo)來(lái)訪問(wèn)。標(biāo)來(lái)訪問(wèn)。在在Java中,數(shù)組是對(duì)象。中,數(shù)組是對(duì)象。類類Object中定義的方法都可以用于數(shù)組。中定義的方法都可以用于數(shù)組。2-67Copyright 山西大學(xué)商務(wù)學(xué)院

51、 2009-2010. All rights reserved.數(shù)組闡明數(shù)組闡明程序員可以闡明任何類型的數(shù)組,數(shù)組元素可以是根本程序員可以闡明任何類型的數(shù)組,數(shù)組元素可以是根本類型,也可以是類類型,當(dāng)然還可以是數(shù)組。類型,也可以是類類型,當(dāng)然還可以是數(shù)組。例例char s ;Point points ;s的每個(gè)元素都是的每個(gè)元素都是char類型的,類型的,points的每個(gè)元素都是的每個(gè)元素都是類類Point類型的。類型的。2-68Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.等價(jià)的數(shù)組闡明等價(jià)的數(shù)組闡明char s;Point point

52、s; 這兩行闡明與前面的闡明完全等價(jià)。這兩行闡明與前面的闡明完全等價(jià)。2-69Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.創(chuàng)建數(shù)組創(chuàng)建數(shù)組和一切對(duì)象一樣,程序中運(yùn)用和一切對(duì)象一樣,程序中運(yùn)用new關(guān)鍵字創(chuàng)建關(guān)鍵字創(chuàng)建數(shù)組,方括號(hào)中的數(shù)字表示數(shù)組元素個(gè)數(shù)。數(shù)組,方括號(hào)中的數(shù)字表示數(shù)組元素個(gè)數(shù)。例:例:s = new char20;points = new Point100;points0 = new Point();points1 = new Point();Java中沒(méi)有靜態(tài)的數(shù)組定義,數(shù)組的內(nèi)存都是中沒(méi)有靜態(tài)的數(shù)組定義,數(shù)組的內(nèi)存都是經(jīng)

53、過(guò)經(jīng)過(guò)new動(dòng)態(tài)分配的。動(dòng)態(tài)分配的。2-70Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.points(a)PointsLength:100(b)pointsLength:100X:Y:(c)2-71Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.Point類定義如下:類定義如下:class Point int x, y; Point ( int x1, int y1) x = x1; y = y1; Point() this(0, 0); 2-72Copyright 山西大學(xué)商務(wù)學(xué)院 2

54、009-2010. All rights reserved.圖闡明圖闡明闡明語(yǔ)句闡明語(yǔ)句:Point points;執(zhí)行終了,系統(tǒng)為變量執(zhí)行終了,系統(tǒng)為變量points分配一個(gè)援用分配一個(gè)援用空間??臻g。闡明語(yǔ)句闡明語(yǔ)句:points = new Point 100;執(zhí)行終了,系統(tǒng)在內(nèi)存中分配一個(gè)數(shù)組對(duì)象執(zhí)行終了,系統(tǒng)在內(nèi)存中分配一個(gè)數(shù)組對(duì)象并把數(shù)組援用賦給變量并把數(shù)組援用賦給變量points,闡明語(yǔ)句闡明語(yǔ)句: points1 = new Point ();2-73Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.數(shù)組闡明與數(shù)組創(chuàng)建可以合并:

55、數(shù)組闡明與數(shù)組創(chuàng)建可以合并: char s = new char 20; Point points = new Point 100;數(shù)組變量的類型可以不同于所指向的數(shù)組類數(shù)組變量的類型可以不同于所指向的數(shù)組類,但應(yīng)該是它的父類。,但應(yīng)該是它的父類。例如:例如: Object points; points = new Point 100; 例如:例如:Point points; points = new Object 100;正確錯(cuò)誤2-74Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.數(shù)組邊境數(shù)組邊境在在Java中,數(shù)組下標(biāo)從中,數(shù)組下標(biāo)從

56、0開(kāi)場(chǎng)。開(kāi)場(chǎng)。數(shù)組中的元素個(gè)數(shù)數(shù)組中的元素個(gè)數(shù)length是數(shù)組類中獨(dú)一的數(shù)據(jù)成員變是數(shù)組類中獨(dú)一的數(shù)據(jù)成員變量。量。運(yùn)用運(yùn)用new創(chuàng)建數(shù)組時(shí)系統(tǒng)自動(dòng)給創(chuàng)建數(shù)組時(shí)系統(tǒng)自動(dòng)給length賦值。賦值。數(shù)組一旦創(chuàng)建終了,其大小就固定下來(lái)。數(shù)組一旦創(chuàng)建終了,其大小就固定下來(lái)。程序運(yùn)轉(zhuǎn)時(shí)運(yùn)用程序運(yùn)轉(zhuǎn)時(shí)運(yùn)用length進(jìn)展數(shù)組邊境檢查。進(jìn)展數(shù)組邊境檢查。假設(shè)發(fā)生越界訪問(wèn),那么拋出一個(gè)異常。假設(shè)發(fā)生越界訪問(wèn),那么拋出一個(gè)異常。2-75Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.例如例如int list = new int 10;for (int i =

57、 0; i list.length; i+) / 進(jìn)展相應(yīng)處置的代碼進(jìn)展相應(yīng)處置的代碼循環(huán)的終了條件中運(yùn)用循環(huán)的終了條件中運(yùn)用list.length,而不是常數(shù),而不是常數(shù)10。益處:不會(huì)引起數(shù)組下標(biāo)越界,使程序更強(qiáng)壯,修正更方益處:不會(huì)引起數(shù)組下標(biāo)越界,使程序更強(qiáng)壯,修正更方便。便。2-76Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.數(shù)組初始化數(shù)組初始化數(shù)組名加上下標(biāo)可以表示數(shù)組元素。數(shù)組名加上下標(biāo)可以表示數(shù)組元素。數(shù)組的下標(biāo)范圍為數(shù)組的下標(biāo)范圍為0到到length-1。當(dāng)創(chuàng)建一個(gè)數(shù)組時(shí),每個(gè)元素都被初始化。當(dāng)創(chuàng)建一個(gè)數(shù)組時(shí),每個(gè)元素都

58、被初始化。Java允許用初值來(lái)創(chuàng)建數(shù)組。允許用初值來(lái)創(chuàng)建數(shù)組。2-77Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.例如例如String names = Georgianna;Jen;Simon;Tom;2-78Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.靜態(tài)初始化靜態(tài)初始化靜態(tài)初始化可用于任何元素類型,初值塊中每個(gè)位靜態(tài)初始化可用于任何元素類型,初值塊中每個(gè)位置的每個(gè)元素對(duì)應(yīng)一個(gè)援用。置的每個(gè)元素對(duì)應(yīng)一個(gè)援用。names = new String4;names0 = Georgian

59、na;names1 = Jen;names2 = Simon;names3 = Tom;2-79Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.多維數(shù)組多維數(shù)組Java可以建立數(shù)組的數(shù)組的數(shù)組可以建立數(shù)組的數(shù)組的數(shù)組,由此得,由此得到多維數(shù)組。到多維數(shù)組。普通來(lái)講,普通來(lái)講,n維數(shù)組是維數(shù)組是n-1維數(shù)組的數(shù)組。維數(shù)組的數(shù)組。闡明多維數(shù)組時(shí)運(yùn)用類型及多對(duì)方括號(hào)。闡明多維數(shù)組時(shí)運(yùn)用類型及多對(duì)方括號(hào)。多維數(shù)組可以從最高維起,分別為每一維分配內(nèi)存多維數(shù)組可以從最高維起,分別為每一維分配內(nèi)存。2-80Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2

60、010. All rights reserved.例如例如int twoDim = new int 4 ;twoDim0 = new int5;twoDim1 = new int5;2-81Copyright 山西大學(xué)商務(wù)學(xué)院 2009-2010. All rights reserved.二維數(shù)組二維數(shù)組創(chuàng)建二維數(shù)組的普通格式為:創(chuàng)建二維數(shù)組的普通格式為:type arrayN = new type arrleng1 ;arrayN 0 = new type arrleng2;arrayN 1 = new type arrleng2;.arrayN arrleng1 - 1 = new type arrleng2;2-82Copyrig

溫馨提示

  • 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)論