更新時(shí)間:2022年11月02日17時(shí)46分 來(lái)源:傳智教育 瀏覽次數(shù):
多維數(shù)組可以簡(jiǎn)單地理解為在數(shù)組中嵌套數(shù)組。在程序中,比較常見(jiàn)的多維數(shù)組是二維數(shù)組,接下來(lái)本節(jié)將針對(duì)二維數(shù)組進(jìn)行詳細(xì)講解,我們以統(tǒng)計(jì)學(xué)校各個(gè)班級(jí)學(xué)生的考試成績(jī),來(lái)實(shí)現(xiàn)。
二維數(shù)組可以被看作是特殊的一維數(shù)組,其定義有很多方式,接下來(lái)針對(duì)幾種常見(jiàn)的方式進(jìn)行詳細(xì)講解,具體如下。
第一種方式,指定二維數(shù)組的長(zhǎng)度和每個(gè)數(shù)組的元素個(gè)數(shù),其基本語(yǔ)法格式如下:
int[][] arr=new int[3][4];
上面的代碼相當(dāng)于定義了一個(gè)3*4的二維數(shù)組,這個(gè)二維數(shù)組的長(zhǎng)度為3,我們可以將它看成3個(gè)int[]類型的一維數(shù)組,每個(gè)一維數(shù)組中的元素又是一個(gè)長(zhǎng)度為4的一維數(shù)組。接下來(lái)通過(guò)一個(gè)圖來(lái)表示這種情況,如下圖所示。
第二種方式,只指定二維數(shù)組的長(zhǎng)度,不確定每個(gè)數(shù)組的元素個(gè)數(shù),其基本語(yǔ)法格式如下:
int[][] arr =new int[3][];
第二種方式和第一種類似,只是數(shù)組中每個(gè)元素的長(zhǎng)度不確定,接下來(lái)通過(guò)一個(gè)圖表來(lái)表示示這種情況,如下圖所示。
第三種方法,直接使用嵌套大括號(hào){},對(duì)二維數(shù)組初始化賦值,其基本語(yǔ)法格式如下:
int[][] arr ={{1,},{3,4,5,6},{7,8,9}};
上面的二維數(shù)組定義了三個(gè)元素,這三個(gè)元素都是數(shù)組,分別為{1,2}、{3,4,5,6}、{7,8,9},接下來(lái)通過(guò)下圖來(lái)表示這種情況:
對(duì)二維數(shù)組中元素的操作是通過(guò)角標(biāo)的方式來(lái)完成的,具體示例代碼如下:
arr[0][1]; //獲取二維數(shù)組中第一個(gè)元素瓶的第二個(gè)元素 arr[0][1=1]; //對(duì)二推數(shù)組中第一個(gè)元家組的第二個(gè)元索賦值成修改
接下來(lái)通過(guò)一個(gè)統(tǒng)計(jì)公司三個(gè)銷售小組中每個(gè)小組的總銷售額,以及整個(gè)公司銷售額的案例來(lái)熟悉二維數(shù)組的使用,如下所示。
Example25.java
public class Example25 { public static void main(String[] args) { //定義一個(gè)長(zhǎng)度為3的二維數(shù)組 int[][] arr =new int[3][]; //為數(shù)組的元素賦值 arr[0] =new int[] {11, 12 } ; arr[1] =new int[] { 21, 22, 23 }; arr[2] =new int[] {31,32,33, 34}; int sum =0; //定義變量記錄總銷售額 for (int i<arr.length;i++) { //遍歷數(shù)組元素 int groupSum =0; //定義變量記錄小組銷售總額 for (int j =0; j <arr[i].length; j++) { groupSum +=arr[i][j]; } sum +=groupSum; //累加小組銷售額 System.out.println("第“+(i+1)+"小組銷售額為:" +groupSum+"萬(wàn)元。"); } System.out.println(”總銷售額為:“+sum+”萬(wàn)元,“); } }
Java網(wǎng)絡(luò)編程:解讀Socket類的構(gòu)造方法和常用方法
2022-10-26網(wǎng)絡(luò)協(xié)議與體系結(jié)構(gòu):認(rèn)識(shí)網(wǎng)絡(luò)層
2022-10-24Java培訓(xùn):java自動(dòng)類型轉(zhuǎn)換規(guī)則
2022-10-21Java培訓(xùn):面向?qū)ο髏ry的用法
2022-10-20java培訓(xùn)南京哪個(gè)機(jī)構(gòu)更靠譜?
2022-10-19Spring Cloud 和dubbo相比哪個(gè)更好用?
2022-10-19北京校區(qū)