版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
面向?qū)ο蟪绦蛟O(shè)計(jì)項(xiàng)目教程本章學(xué)習(xí)目標(biāo):●
掌握數(shù)組的聲明和創(chuàng)建●
掌握數(shù)組的初始化●
了解二維數(shù)組的定義和訪問●
掌握foreach遍歷數(shù)組●
了解Arrays類的基本應(yīng)用項(xiàng)目4認(rèn)識(shí)數(shù)組任務(wù)1part創(chuàng)建數(shù)組Java語言支持兩種語法格式來定義數(shù)組: dataType[]arrayName; dataTypearrayName[];
其中,dataType是數(shù)據(jù)元素的數(shù)據(jù)類型,arrayName是用戶自定義的數(shù)組名稱,數(shù)組名的命名要符合標(biāo)識(shí)符的命名規(guī)則。1.1數(shù)組的聲明數(shù)組的聲明1.靜態(tài)初始化靜態(tài)初始化的語法格式如下:arrayName=newdataType[]{num1,num2,num3...};在上面的語法格式中,dataType就是數(shù)組元素的數(shù)據(jù)類型,此處的dataType必須與定義數(shù)組變量時(shí)所使用的dataType相同,也可以是定義數(shù)組時(shí)所指定的dataType的子類,并使用花括號(hào)把所有的數(shù)組元素括起來,多個(gè)元素之間用逗號(hào)隔開。下面代碼示例了數(shù)組的靜態(tài)初始化。1.2數(shù)組的初始化2.動(dòng)態(tài)初始化動(dòng)態(tài)初始化的語法格式如下:arrayName=newdataType[length];在上面的語法中,需要指定一個(gè)數(shù)組長(zhǎng)度的length參數(shù),也就是可以容納數(shù)組元素的個(gè)數(shù)。與靜態(tài)初始化相似的是,此處的dataType必須與定義數(shù)組變量時(shí)所使用的dataType相同,或者是定義數(shù)組時(shí)所指定的dataType的子類。下面代碼示例了數(shù)組的動(dòng)態(tài)初始化。1.2數(shù)組的初始化任務(wù)2part訪問數(shù)組訪問數(shù)組
數(shù)組最常用的用法就是訪問數(shù)組元素,包括對(duì)數(shù)組元素進(jìn)行賦值和取出數(shù)組元素的值。訪問數(shù)組元素中某個(gè)元素的語法格式如下:arrayName[index]
在上面的語法中,index表示數(shù)組的下標(biāo)索引,其取值范圍從0開始,最大值為數(shù)組的長(zhǎng)度-1。例如,array[0]表示數(shù)組array的第1個(gè)元素,array[10]表示數(shù)組array的第11個(gè)元素。數(shù)組的長(zhǎng)度可以通過“數(shù)組名.length”進(jìn)行獲取。如果訪問數(shù)組元素時(shí)指定的下標(biāo)索引值小于0,或者大于等于數(shù)組的長(zhǎng)度,編譯程序不會(huì)出現(xiàn)任何錯(cuò)誤,但運(yùn)行時(shí)會(huì)出現(xiàn)異常:java.lang.ArrayIndexOutOfBoundsException:N(數(shù)組索引越界異常),異常信息后的N就是程序員試圖訪問的數(shù)組下標(biāo)索引。
訪問數(shù)組任務(wù)3part掌握冒泡排序冒泡排序算法
冒泡排序是一種簡(jiǎn)單的排序算法。這個(gè)算法的名字由來是因?yàn)樵酱蟮脑貢?huì)經(jīng)數(shù)據(jù)交換慢慢“浮”到數(shù)列的頂端而得名,它重復(fù)訪問要排序的數(shù)列,一次比較兩個(gè)元素,如果他們的順序錯(cuò)誤就把他們交換過來。
冒泡排序算法的原理如下:1.比較相鄰的元素,如果第一個(gè)比第二個(gè)大,就交換他們兩個(gè)。2.對(duì)每一對(duì)相鄰元素作同樣的工作,從開始第一對(duì)到結(jié)尾的最后一對(duì)。在這一點(diǎn),最后的元素應(yīng)該會(huì)是最大的數(shù)。3.針對(duì)所有的元素重復(fù)以上的步驟,除了最后一個(gè)。4.持續(xù)每次對(duì)越來越少的元素重復(fù)上面的步驟,直到?jīng)]有任何一對(duì)數(shù)字需要比較。
下面代碼示例了冒泡排序的算法。冒泡排序算法任務(wù)4part運(yùn)用foreach遍歷數(shù)組foreach語句的語法結(jié)構(gòu)如下所示:for(數(shù)據(jù)類型
變量名:數(shù)組名)
注意,foreach語句中的數(shù)據(jù)類型必須與數(shù)組的數(shù)據(jù)類型一致。foreach遍歷數(shù)組Foreach遍歷數(shù)組任務(wù)5part了解二維數(shù)組
定義二維數(shù)組的基本語法格式如下:dataType[][]arrayName;
二維數(shù)組的創(chuàng)建和初始化與一維數(shù)組類似,也可以使用靜態(tài)初始化和動(dòng)態(tài)初始化兩種方式
。二維數(shù)組二維數(shù)組任務(wù)6part應(yīng)用Arrays類
在Arrays類中提供了一個(gè)名為sort的方法,利用它可以直接對(duì)數(shù)組進(jìn)行排序,而不需要再編寫代碼。sort()方法在Arrays類中是重載方法,它不僅提供了對(duì)基本數(shù)據(jù)類型的支持,而且也支持對(duì)對(duì)象進(jìn)行排序。
6.1數(shù)組排序數(shù)組排序類Arrays提供了一系列重載的binarySearch()方法可以用二分查找法對(duì)指定數(shù)組進(jìn)行檢索。binarySearch()方法用于在已經(jīng)排好序的數(shù)組中查找元素。如果找到了要查找的元素,則返回一個(gè)等于或大于0的值,否則將返回一個(gè)負(fù)值,表示在該數(shù)組目前的排序狀態(tài)下此目標(biāo)元素應(yīng)該插入的位置。負(fù)值的計(jì)算公式是“-n-1”,n表示第一個(gè)大于查找對(duì)象的元素在數(shù)組中的位置,如果數(shù)組中所有元素都小于要查找的對(duì)象,則n為數(shù)組的長(zhǎng)度,如果數(shù)組中包含重復(fù)元素,則無法保證找到的是哪一個(gè)元素。因此,在調(diào)用binarySearch()方法對(duì)數(shù)組進(jìn)行檢索之前,一定要確保被檢索的數(shù)組是有序的。下面通過示例演示binarySearch()方法的應(yīng)用,代碼如下。6.2數(shù)組檢索數(shù)組檢索Arrays類提供了copyOf()方法和copyOfRange()方法實(shí)現(xiàn)數(shù)組的復(fù)制功能。copyOf()方法的第一個(gè)參數(shù)為源數(shù)組,第二個(gè)參數(shù)為生成的目標(biāo)數(shù)組的元素個(gè)數(shù)。如果指定的目標(biāo)數(shù)組元素個(gè)數(shù)小于源數(shù)組元素個(gè)數(shù),源數(shù)組前面的元素將被復(fù)制到目標(biāo)數(shù)組中;如果指定的目標(biāo)
溫馨提示
- 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. 人人文庫(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)考核試卷含答案
- 金屬炊具及器皿制作工班組評(píng)比考核試卷含答案
- 繼電器裝配工創(chuàng)新意識(shí)水平考核試卷含答案
- 礦用電機(jī)車電氣裝配工操作規(guī)范水平考核試卷含答案
- 混鐵爐工安全生產(chǎn)意識(shí)競(jìng)賽考核試卷含答案
- 2025年摻混肥合作協(xié)議書
- 2025年TFT系列偏光片項(xiàng)目合作計(jì)劃書
- 2025年聚L-乳酸項(xiàng)目發(fā)展計(jì)劃
- 2026年智能恒溫控制系統(tǒng)項(xiàng)目評(píng)估報(bào)告
- 牡蠣科普教學(xué)課件
- 地質(zhì)年代學(xué)-洞察及研究
- 兒童游樂園安全知識(shí)培訓(xùn)課件
- 員工心理健康疏導(dǎo)培訓(xùn)
- TCFLP0030-2021國(guó)有企業(yè)網(wǎng)上商城采購(gòu)交易操作規(guī)范
- 儀表設(shè)備管理規(guī)劃
- 手外傷課件教學(xué)課件
- 假肢器械基礎(chǔ)知識(shí)培訓(xùn)課件
- 可摘局部義齒印模技術(shù)
- 觀賞魚水族箱制造創(chuàng)新創(chuàng)業(yè)項(xiàng)目商業(yè)計(jì)劃書
- 藥品安全應(yīng)急預(yù)案演練方案
- 道路完工通車方案(3篇)
評(píng)論
0/150
提交評(píng)論