版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、傳智播客專注于Java、.Net和Php、網(wǎng)頁平面設(shè)計(jì)工程師的培訓(xùn)第4天 Java基礎(chǔ)語法今日內(nèi)容介紹流程控制語句(switch)數(shù)組流程控制語句選擇結(jié)構(gòu)switchswitch 條件語句也是一種很常用的選擇語句,它和if條件語句不同,它只能針對(duì)某個(gè)表達(dá)式的值作出判斷,從而決定程序執(zhí)行哪一段代碼。例如,在程序中使用數(shù)字17來表示星期一到星期天,如果想根據(jù)某個(gè)輸入的數(shù)字來輸出對(duì)應(yīng)中文格式的星期值,可以通過下面的一段偽代碼來描述:用于表示星期的數(shù)字如果等于1,則輸出星期一如果等于2,則輸出星期二如果等于3,則輸出星期三如果等于4,則輸出星期四如果等于5,則輸出星期五如果等于6,則輸出星期六如果等于
2、7,則輸出星期天對(duì)于上面一段偽代碼的描述,大家可能會(huì)立刻想到用剛學(xué)過得ifelse ifelse語句來實(shí)現(xiàn),但是由于判斷條件比較多,實(shí)現(xiàn)起來代碼過長(zhǎng),不便于閱讀。Java中提供了一種switch語句來實(shí)現(xiàn)這種需求,在switch語句中使用switch關(guān)鍵字來描述一個(gè)表達(dá)式,使用case關(guān)鍵字來描述和表達(dá)式結(jié)果比較的目標(biāo)值,當(dāng)表達(dá)式的值和某個(gè)目標(biāo)值匹配時(shí),會(huì)執(zhí)行對(duì)應(yīng)case下的語句。具體實(shí)現(xiàn)代碼如下:switch(用于表示星期的數(shù)字) case 1 : 輸出星期一; break; case 2 : 輸出星期二; break; case 3 : 輸出星期三 break; case 4 : 輸出星期
3、四; break; case 5 : 輸出星期五; break; case 6: 輸出星期六; break; case 7: 輸出星期天; break;上面改寫后的偽代碼便描述了switch語句的基本語法格式,具體如下:switch (表達(dá)式)case 目標(biāo)值1:執(zhí)行語句1break;case 目標(biāo)值2:執(zhí)行語句2break;case 目標(biāo)值n:執(zhí)行語句nbreak;default:執(zhí)行語句n+1break;在上面的格式中,switch語句將表達(dá)式的值與每個(gè)case中的目標(biāo)值進(jìn)行匹配,如果找到了匹配的值,會(huì)執(zhí)行對(duì)應(yīng)case后的語句,如果沒找到任何匹配的值,就會(huì)執(zhí)行default后的語句。swi
4、tch語句中的break關(guān)鍵字將在后面的做具體介紹,此處,我們只需要知道break的作用是跳出switch語句即可。需要注意的是,在switch語句中的表達(dá)式只能是byte、short、char、int類型的值,如果傳入其它類型的值,程序會(huì)報(bào)錯(cuò)。但上述說法并不嚴(yán)謹(jǐn),實(shí)際上在JDK5.0中引入的新特性enum枚舉也可以作為switch語句表達(dá)式的值,在JDK7.0中也引入了新特性,switch語句可以接收一個(gè)String類型的值。選擇結(jié)構(gòu)switch練習(xí)接下來通過一個(gè)案例演示根據(jù)數(shù)字來輸出中文格式的星期,如下所示。SwitchDemo01.javapublic class SwitchDemo0
5、1 public static void main(String args) int week = 5;switch (week) case 1:System.out.println(星期一);break;case 2:System.out.println(星期二);break;case 3:System.out.println(星期三);break;case 4:System.out.println(星期四);break;case 5:System.out.println(星期五);break;case 6:System.out.println(星期六);break;case 7:Syste
6、m.out.println(星期天);break;default:System.out.println(輸入的數(shù)字不正確.);break;運(yùn)行結(jié)果如圖所示。運(yùn)行結(jié)果上述代碼中,由于變量week的值為5,整個(gè)switch語句判斷的結(jié)果滿足第17行的條件,因此打印“星期五”,例程中的default語句用于處理和前面的case都不匹配的值,將第3行代碼替換為int week = 8,再次運(yùn)行程序,輸出結(jié)果如下圖所示。運(yùn)行結(jié)果在使用switch語句的過程中,如果多個(gè)case條件后面的執(zhí)行語句是一樣的,則該執(zhí)行語句只需書寫一次即可,這是一種簡(jiǎn)寫的方式。例如,要判斷一周中的某一天是否為工作日,同樣使用數(shù)字
7、17來表示星期一到星期天,當(dāng)輸入的數(shù)字為1、2、3、4、5時(shí)就視為工作日,否則就視為休息日。接下來通過一個(gè)案例來實(shí)現(xiàn)上面描述的情況,如下所示。SwitchDemo02.javapublic class SwitchDemo02 public static void main(String args) int week = 2;switch (week) case 1:case 2:case 3:case 4:case 5:/ 當(dāng) week 滿足值 1、2、3、4、5 中任意一個(gè)時(shí),處理方式相同System.out.println(今天是工作日);break;case 6:case 7:/ 當(dāng)
8、week 滿足值 6、7 中任意一個(gè)時(shí),處理方式相同System.out.println(今天是休息日);break;運(yùn)行結(jié)果如下圖所示。運(yùn)行結(jié)果 上述代碼中,當(dāng)變量week值為1、2、3、4、5中任意一個(gè)值時(shí),處理方式相同,都會(huì)打印“今天是工作日”。同理,當(dāng)變量week值為6、7中任意一個(gè)值時(shí),打印“今天是休息日”。數(shù)組在生活中,我們可能會(huì)碰到如下的場(chǎng)景?,F(xiàn)在需要統(tǒng)計(jì)某公司員工的工資情況,例如計(jì)算平均工資、最高工資等。假設(shè)該公司有50名員工,用前面所學(xué)的知識(shí)完成,那么程序首先需要聲明50個(gè)變量來分別記住每位員工的工資,這樣做會(huì)顯得很麻煩。其實(shí)在Java中,我們可以使用一個(gè)數(shù)組來記住這50名員
9、工的工資。數(shù)組是指一組數(shù)據(jù)的集合,數(shù)組中的每個(gè)數(shù)據(jù)被稱作元素。在數(shù)組中可以存放任意類型的元素,但同一個(gè)數(shù)組里存放的元素類型必須一致。數(shù)組的定義在Java中,可以使用以下格式來定義一個(gè)數(shù)組。如下數(shù)據(jù)類型 數(shù)組名 = new 數(shù)據(jù)類型元素個(gè)數(shù)或數(shù)組長(zhǎng)度;int x = new int100;上述語句就相當(dāng)于在內(nèi)存中定義了100個(gè)int類型的變量,第一個(gè)變量的名稱為x0,第二個(gè)變量的名稱為x1,以此類推,第100個(gè)變量的名稱為x99,這些變量的初始值都是0。為了更好地理解數(shù)組的這種定義方式,可以將上面的一句代碼分成兩句來寫,具體如下:int x; / 聲明一個(gè)int類型的變量x = new int1
10、00;/ 創(chuàng)建一個(gè)長(zhǎng)度為100的數(shù)組接下來,通過兩張內(nèi)存圖來詳細(xì)地說明數(shù)組在創(chuàng)建過程中內(nèi)存的分配情況。第一行代碼 int x; 聲明了一個(gè)變量x,該變量的類型為int,即一個(gè)int類型的數(shù)組。變量x會(huì)占用一塊內(nèi)存單元,它沒有被分配初始值。內(nèi)存中的狀態(tài)如下圖所示。內(nèi)存狀態(tài)圖第二行代碼 x = new int100; 創(chuàng)建了一個(gè)數(shù)組,將數(shù)組的地址賦值給變量x。在程序運(yùn)行期間可以使用變量x來引用數(shù)組,這時(shí)內(nèi)存中的狀態(tài)會(huì)發(fā)生變化,如下圖所示。內(nèi)存狀態(tài)圖在上圖中描述了變量x引用數(shù)組的情況。該數(shù)組中有100個(gè)元素,初始值都為0。數(shù)組中的每個(gè)元素都有一個(gè)索引(也可稱為角標(biāo)),要想訪問數(shù)組中的元素可以通過“x
11、0、x1、x98、x99”的形式。需要注意的是,數(shù)組中最小的索引是0,最大的索引是“數(shù)組的長(zhǎng)度-1”。在Java中,為了方便我們獲得數(shù)組的長(zhǎng)度,提供了一個(gè)length屬性,在程序中可以通過“數(shù)組名.length”的方式來獲得數(shù)組的長(zhǎng)度,即元素的個(gè)數(shù)。接下來,通過一個(gè)案例來演示如何定義數(shù)組以及訪問數(shù)組中的元素,如下所示。ArrayDemo01.javapublic class ArrayDemo01 public static void main(String args) int arr; / 聲明變量arr = new int3; / 創(chuàng)建數(shù)組對(duì)象System.out.println(arr0
12、= + arr0); / 訪問數(shù)組中的第一個(gè)元素System.out.println(arr1= + arr1); / 訪問數(shù)組中的第二個(gè)元素System.out.println(arr2= + arr2); / 訪問數(shù)組中的第三個(gè)元素System.out.println(數(shù)組的長(zhǎng)度是: + arr.length); / 打印數(shù)組長(zhǎng)度運(yùn)行結(jié)果如下圖所示。運(yùn)行結(jié)果在上述代碼中聲明了一個(gè)int類型變量arr,并將數(shù)組在內(nèi)存中的地址賦值給它。在57行代碼中通過角標(biāo)來訪問數(shù)組中的元素,在第8行代碼中通過length屬性訪問數(shù)組中元素的個(gè)數(shù)。從打印結(jié)果可以看出,數(shù)組中的三個(gè)元素初始值都為0,這是因?yàn)楫?dāng)數(shù)
13、組被成功創(chuàng)建后,數(shù)組中元素會(huì)被自動(dòng)賦予一個(gè)默認(rèn)值,根據(jù)元素類型的不同,默認(rèn)初始化的值也是不一樣的。具體如下表所示。元素默認(rèn)值數(shù)據(jù)類型默認(rèn)初始化值byte、short、int、long0float、double0.0char一個(gè)空字符(空格),即u0000booleanfalse引用數(shù)據(jù)類型null,表示變量不引用任何對(duì)象如果在使用數(shù)組時(shí),不想使用這些默認(rèn)初始值,也可以顯式地為這些元素賦值。接下來通過一個(gè)程序來學(xué)習(xí)如何為數(shù)組的元素賦值,如下所示。ArrayDemo02.javapublic class ArrayDemo02 public static void main(String args
14、) int arr = new int4; / 定義可以存儲(chǔ)4個(gè)整數(shù)的數(shù)組arr0 = 1; / 為第1個(gè)元素賦值1arr1 = 2; / 為第2個(gè)元素賦值2/ 下面的代碼是打印數(shù)組中每個(gè)元素的值System.out.println(arr0= + arr0);System.out.println(arr1= + arr1);System.out.println(arr2= + arr2);System.out.println(arr3= + arr3);運(yùn)行結(jié)果如下圖所示。運(yùn)行結(jié)果在上述代碼中,第3行代碼定義了一個(gè)數(shù)組,此時(shí)數(shù)組中每個(gè)元素都為默認(rèn)初始值0。第2、3行代碼通過賦值語句將數(shù)組中的
15、元素arr0和arr1分別賦值為1和2,而元素arr2和arr3沒有賦值,其值仍為0,因此打印結(jié)果中四個(gè)元素的值依次為1、2、0、0。在定義數(shù)組時(shí)只指定數(shù)組的長(zhǎng)度,由系統(tǒng)自動(dòng)為元素賦初值的方式稱作動(dòng)態(tài)初始化。在初始化數(shù)組時(shí)還有一種方式叫做靜態(tài)初始化,就是在定義數(shù)組的同時(shí)就為數(shù)組的每個(gè)元素賦值。數(shù)組的靜態(tài)初始化有兩種方式,具體格式如下:1、類型 數(shù)組名 = new 類型元素,元素,;2、類型 數(shù)組名 = 元素,元素,元素,; 上面的兩種方式都可以實(shí)現(xiàn)數(shù)組的靜態(tài)初始化,但是為了簡(jiǎn)便,建議采用第二種方式。接下來通過一段代碼來演示數(shù)組靜態(tài)初始化的效果,如下所示。ArrayDemo03.javapubl
16、ic class ArrayDemo03 public static void main(String args) int arr = 1, 2, 3, 4 ; / 靜態(tài)初始化/ 下面的代碼是依次訪問數(shù)組中的元素System.out.println(arr0 = + arr0);System.out.println(arr1 = + arr1);System.out.println(arr2 = + arr2);System.out.println(arr3 = + arr3);運(yùn)行結(jié)果如下圖所示。運(yùn)行結(jié)果上述代碼中采用靜態(tài)初始化的方式為數(shù)組每個(gè)元素賦予初值,分別是1、2、3、4。需要注意的是
17、,第3行代碼千萬不可寫成int arr = new int41,2,3,4;,這樣寫編譯器會(huì)報(bào)錯(cuò)。原因在于編譯器會(huì)認(rèn)為數(shù)組限定的元素個(gè)數(shù)4與實(shí)際存儲(chǔ)的元素1,2,3,4個(gè)數(shù)有可能不一致,存在一定的安全隱患。數(shù)組遍歷在操作數(shù)組時(shí),經(jīng)常需要依次訪問數(shù)組中的每個(gè)元素,這種操作稱作數(shù)組的遍歷。接下來通過一個(gè)案例來學(xué)習(xí)如何使用for循環(huán)來遍歷數(shù)組,如下所示。ArrayDemo04.javapublic class ArrayDemo04 public static void main(String args) int arr = 1, 2, 3, 4, 5 ; / 定義數(shù)組/ 使用for循環(huán)遍歷數(shù)組的元
18、素for (int i = 0; i arr.length; i+) System.out.println(arri); / 通過索引訪問元素運(yùn)行結(jié)果如下圖所示。運(yùn)行結(jié)果上述代碼中,定義一個(gè)長(zhǎng)度為5的數(shù)組arr,數(shù)組的角標(biāo)為04。由于for循環(huán)中定義的變量i的值在循環(huán)過程中為04,因此可以作為索引,依次去訪問數(shù)組中的元素,并將元素的值打印出來。數(shù)組的常見問題數(shù)組在編寫程序時(shí)應(yīng)用非常廣泛,靈活地使用數(shù)組對(duì)實(shí)際開發(fā)很重要。接下來,本節(jié)將針對(duì)數(shù)組的常見操作進(jìn)行詳細(xì)地講解,如數(shù)組的遍歷、最值的獲取、數(shù)組的排序等。數(shù)組最值在操作數(shù)組時(shí),經(jīng)常需要獲取數(shù)組中元素的最值。接下來通過一個(gè)案例來演示如何獲取數(shù)組中
19、元素的最大值,如下所示。ArrayDemo05.javapublic class ArrayDemo05 public static void main(String args) int arr = 4, 1, 6, 3, 9, 8 ; / 定義一個(gè)數(shù)組int max = arr0; / 定義變量max用于記住最大數(shù),首先假設(shè)第一個(gè)元素為最大值/ 下面通過一個(gè)for循環(huán)遍歷數(shù)組中的元素for (int x = 1; x max) / 比較 arrx的值是否大于maxmax = arrx; / 條件成立,將arrx的值賦給maxSystem.out.println(max= + max); /
20、打印最大值運(yùn)行結(jié)果如下圖所示。運(yùn)行結(jié)果上述代碼中,定義了一個(gè)臨時(shí)變量max,用于記住數(shù)組的最大值。通過for 循環(huán)獲取數(shù)組中的最大值,賦值給max變量。首先假設(shè)數(shù)組中第一個(gè)元素arr0為最大值,然后使用for循環(huán)對(duì)數(shù)組進(jìn)行遍歷,在遍歷的過程中只要遇到比max值還大的元素,就將該元素賦值給max。這樣一來,變量max就能夠在循環(huán)結(jié)束時(shí)記住數(shù)組中的最大值。需要注意的是,在for循環(huán)中的變量i是從1開始的,這樣寫的原因是程序已經(jīng)假設(shè)第一個(gè)元素為最大值,for循環(huán)中只需要從第二個(gè)元素開始比較,從而提高程序的運(yùn)行效率。數(shù)組異常數(shù)組越界異常每個(gè)數(shù)組的索引都有一個(gè)范圍,即0length-1。在訪問數(shù)組的元素
21、時(shí),索引不能超出這個(gè)范圍,否則程序會(huì)報(bào)錯(cuò),如下所示。ArrayDemo06.javapublic class ArrayDemo06 public static void main(String args) int arr = new int4; / 定義一個(gè)長(zhǎng)度為4的數(shù)組System.out.println(arr0= + arr4); / 通過角標(biāo)4訪問數(shù)組元素運(yùn)行結(jié)果如下圖所示。上圖運(yùn)行結(jié)果中所提示的錯(cuò)誤信息是數(shù)組越界異常ArrayIndexOutOfBoundsException,出現(xiàn)這個(gè)異常的原因是數(shù)組的長(zhǎng)度為4,其索引范圍為03,而上述代碼中的第4行代碼使用索引4來訪問元素時(shí)超出了
22、數(shù)組的索引范圍。所謂異常指程序中出現(xiàn)的錯(cuò)誤,它會(huì)報(bào)告出錯(cuò)的異常類型、出錯(cuò)的行號(hào)以及出錯(cuò)的原因,關(guān)于異常在后面的章節(jié)會(huì)有詳細(xì)地講解??罩羔槷惓T谑褂米兞恳靡粋€(gè)數(shù)組時(shí),變量必須指向一個(gè)有效的數(shù)組對(duì)象,如果該變量的值為null,則意味著沒有指向任何數(shù)組,此時(shí)通過該變量訪問數(shù)組的元素會(huì)出現(xiàn)空指針異常,接下來通過一個(gè)案例來演示這種異常,如下所示。ArrayDemo07.javapublic class ArrayDemo07 public static void main(String args) int arr = new int3; / 定義一個(gè)長(zhǎng)度為3的數(shù)組arr0 = 5; / 為數(shù)組的第一個(gè)
23、元素賦值System.out.println(arr0= + arr0); / 訪問數(shù)組的元素arr = null; / 將變量arr置為nullSystem.out.println(arr0= + arr0); / 訪問數(shù)組的元素運(yùn)行結(jié)果如下圖所示。運(yùn)行結(jié)果通過上圖所示的運(yùn)行結(jié)果可以看出,上述代碼中第4、5行代碼都能通過變量arr正常地操作數(shù)組。第6行代碼將變量置為null,當(dāng)?shù)?行代碼再次訪問數(shù)組時(shí)就出現(xiàn)了空指針異常NullPointerException。二維數(shù)組在程序中可以通過一個(gè)數(shù)組來保存某個(gè)班級(jí)學(xué)生的考試成績(jī),試想一下,如果要統(tǒng)計(jì)一個(gè)學(xué)校各個(gè)班級(jí)學(xué)生的考試成績(jī),又該如何實(shí)現(xiàn)呢?這時(shí)
24、就需要用到多維數(shù)組,多維數(shù)組可以簡(jiǎn)單地理解為在數(shù)組中嵌套數(shù)組。在程序中比較常見的就是二維數(shù)組,接下來針對(duì)二維數(shù)組進(jìn)行詳細(xì)地講解。二維數(shù)組的定義格式二維數(shù)組的定義有很多方式,接下來針對(duì)幾種常見的方式進(jìn)行詳細(xì)地講解,具體如下:第一種方式:int arr = new int34;上面的代碼相當(dāng)于定義了一個(gè)3*4的二維數(shù)組,即二維數(shù)組的長(zhǎng)度為3,二維數(shù)組中的每個(gè)元素又是一個(gè)長(zhǎng)度為4的數(shù)組,接下來通過一個(gè)圖來表示這種情況,如下圖所示。二維數(shù)組第二種方式:int arr = new int3;第二種方式和第一種類似,只是數(shù)組中每個(gè)元素的長(zhǎng)度不確定,接下來通過一個(gè)圖來表示這種情況,如下圖所示。二維數(shù)組第三種
25、方式:int arr = 1,2,3,4,5,6,7,8,9;上面的二維數(shù)組中定義了三個(gè)元素,這三個(gè)元素都是數(shù)組,分別為1,2、3,4,5,6、7,8,9,接下來通過一個(gè)圖來表示這種情況,如圖2-54所示。二維數(shù)組對(duì)二維數(shù)組中元素的訪問也是通過角標(biāo)的方式,如需訪問二維數(shù)組中第一個(gè)元素?cái)?shù)組的第二個(gè)元素,具體代碼如下:arr01;二維數(shù)組元素的訪問操作二維數(shù)組時(shí),經(jīng)常需要獲取數(shù)組中元素的值。接下來通過一個(gè)案例來演示如何獲取數(shù)組中元素值,如下所示。ArrayDemo08.javaclass ArrayDemo08 public static void main(String args)/定義二維數(shù)組
26、的方式int arr = new int34;System.out.println( arr );System.out.println(二維數(shù)組的長(zhǎng)度: + arr.length);/獲取二維數(shù)組的3個(gè)元素System.out.println( arr0 );System.out.println( arr1 );System.out.println( arr2 );System.out.println(打印第一個(gè)一維數(shù)組的元素值);System.out.println( arr00 );System.out.println( arr01 );/訪問的為二維數(shù)組中第1個(gè)一維數(shù)組的第2個(gè)元素Sys
27、tem.out.println( arr02 );System.out.println( arr03 );System.out.println(打印第二個(gè)一維數(shù)組的元素值);System.out.println( arr10 );System.out.println( arr11 );System.out.println( arr12 );System.out.println( arr13 );System.out.println(打印第三個(gè)一維數(shù)組的元素值);System.out.println( arr20 );System.out.println( arr21 );System.out.
28、println( arr22 );System.out.println( arr23 );運(yùn)行結(jié)果如下圖所示:運(yùn)行結(jié)果二維數(shù)組元素遍歷與數(shù)組元素累加和學(xué)習(xí)完了數(shù)組元素的訪問,我們來學(xué)習(xí)下數(shù)組的遍歷及數(shù)組的元素累加和操作。class ArrayDemo09 public static void main(String args)/一維數(shù)組的求累加和并遍歷int arr = 10,20,30,40,50;int sum = 0; for (int i=0; iarr.length; i+) /System.out.println(arri);sum += arri;System.out.print
29、ln(sum= + sum);System.out.println(-);/二維數(shù)組的求累加和并遍歷int arr2 = 1,2,3,4,5,6,7,8,9,10 ;int sum2 = 0;for (int i=0; iarr2.length; i+) for (int j=0; jarr2i.length; j+) /System.out.println(arr2ij)sum2 += arr2ij;System.out.println(sum2= + sum2);運(yùn)行結(jié)果如下圖所示:運(yùn)行結(jié)果公司銷售總和練習(xí)接下來通過一個(gè)案例來熟悉二維數(shù)組的使用。例如要統(tǒng)計(jì)一個(gè)公司三個(gè)銷售小組中每個(gè)小組的總
30、銷售額以及整個(gè)公司的銷售額。如下所示第一小組銷售額為11, 12萬元第二小組銷售額為21, 22, 23萬元第三小組銷售額為31, 32, 33, 34萬元。ArrayDemo08.javapublic class ArrayDemo10 public static void main(String args) int arr = new int3; / 定義一個(gè)長(zhǎng)度為3的二維數(shù)組arr0 = new int 11, 12 ; / 為數(shù)組的元素賦值arr1 = new int 21, 22, 23 ;arr2 = new int 31, 32, 33, 34 ;int sum = 0; / 定
31、義變量記錄總銷售額for (int i = 0; i arr.length; i+) / 遍歷數(shù)組元素int groupSum = 0; / 定義變量記錄小組銷售總額for (int j = 0; j arri.length; j+) / 遍歷小組內(nèi)每個(gè)人的銷售額groupSum = groupSum + arrij;sum = sum + groupSum; / 累加小組銷售額System.out.println(第 + (i + 1) + 小組銷售額為: + groupSum + 萬元);System.out.println(總銷售額為: + sum + 萬元);運(yùn)行結(jié)果如下圖所示。運(yùn)行結(jié)
32、果在上述代碼中,第3行代碼定義了一個(gè)長(zhǎng)度為3的二維數(shù)組,并在46行代碼中為數(shù)組的每個(gè)元素賦值。例程中還定義了兩個(gè)變量sum和groupSum,其中sum用來記錄公司的總銷售額,groupSum用來記錄每個(gè)銷售小組的銷售額。當(dāng)通過嵌套for循環(huán)統(tǒng)計(jì)銷售額時(shí),外層循環(huán)對(duì)三個(gè)銷售小組進(jìn)行遍歷,內(nèi)層循環(huán)對(duì)每個(gè)小組員工的銷售額進(jìn)行遍歷,內(nèi)層循環(huán)每循環(huán)一次就相當(dāng)于將一個(gè)小組員工的銷售總額統(tǒng)計(jì)完畢,賦值給groupSum,然后把groupSum的值與sum的值相加賦值給sum。當(dāng)外層循環(huán)結(jié)束時(shí),三個(gè)銷售小組的銷售總額groupSum都累加到sum中,即統(tǒng)計(jì)出了整個(gè)公司的銷售總額。隨機(jī)點(diǎn)名器案例案例介紹隨機(jī)點(diǎn)
33、名器,即在全班同學(xué)中隨機(jī)的打印出一名同學(xué)名字。要做的隨機(jī)點(diǎn)名器,它具備以下3個(gè)內(nèi)容:存儲(chǔ)所有同學(xué)姓名總覽全班同學(xué)姓名隨機(jī)點(diǎn)名其中一人,打印到控制臺(tái)在編寫案例前,我們先來學(xué)習(xí)下本案例中所涉及到的知識(shí)點(diǎn):數(shù)組案例需求分析在全班同學(xué)中隨機(jī)的打印出一名同學(xué)名字。我們對(duì)本案例進(jìn)行分析,得出如下分析結(jié)果:1.存儲(chǔ)全班同學(xué)名字2.打印全班同學(xué)每一個(gè)人的名字3.在班級(jí)總?cè)藬?shù)范圍內(nèi),隨機(jī)產(chǎn)生一個(gè)隨機(jī)數(shù),查找該隨機(jī)數(shù)所對(duì)應(yīng)的同學(xué)名字在存儲(chǔ)同學(xué)姓名時(shí),如果對(duì)每一個(gè)同學(xué)都定義一個(gè)變量進(jìn)行姓名存儲(chǔ),則會(huì)出現(xiàn)過多孤立的變量,很難一次性將全部數(shù)據(jù)持有。此時(shí),我們可以使用數(shù)組解決多個(gè)數(shù)據(jù)的存儲(chǔ)問題。實(shí)現(xiàn)代碼步驟編寫CallName.java文件,完成程序的編寫。main方法中進(jìn)行步驟1、2、3的代碼實(shí)現(xiàn)public static void main(String args) System.out.println(-隨機(jī)點(diǎn)名器-);/ 創(chuàng)建一個(gè)存儲(chǔ)多個(gè)同學(xué)名字的容器(數(shù)組)String s
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 國(guó)外石英礦山承包合同協(xié)議書范本
- 合同板本類型
- 2024年濟(jì)寧煙臺(tái)客運(yùn)上崗證考試題
- 2024應(yīng)屆生簽合同的合同陷阱
- 2024上海市旅游包車合同
- 三年級(jí)語文上冊(cè)第二單元測(cè)試卷-基礎(chǔ)知識(shí)與綜合能力篇 含答案 部編版
- 2024建筑勞務(wù)人工合同范本
- 2024汽車配件供應(yīng)合同
- 員工人事檔案
- 報(bào)廢車輛收購(gòu)合同(2篇)
- 優(yōu)質(zhì)護(hù)理服務(wù)PPT
- (完整版)銀行賬戶共管協(xié)議最新(精華版)
- 第三章 閘板防噴器
- 實(shí)驗(yàn)五魚體測(cè)量及描述
- 市值管理十大經(jīng)典案例
- 馬克思主義基本原理概論課程論文
- Thebestjobintheworld
- 最終版加氣機(jī)使用說明書
- 水庫移民工作存在的問題及對(duì)策水庫建設(shè)移民問題
- 班級(jí)文化建設(shè)的實(shí)踐與研究課題方案doc
- 有色金屬選礦廠工藝設(shè)計(jì)規(guī)范
評(píng)論
0/150
提交評(píng)論