數(shù)組

數(shù)組的定義和創(chuàng)建:

數(shù)組可以看成是多個(gè)相同類型數(shù)據(jù)的組合,實(shí)現(xiàn)對這些數(shù)據(jù)的統(tǒng)一管理。

例如:

數(shù)組元素:數(shù)組中的每一個(gè)數(shù)據(jù),稱為數(shù)組的一個(gè)元素

? ? 數(shù)組中的元素可以是任何數(shù)據(jù)類型,包括基本數(shù)據(jù)類型和引用類型

數(shù)組中元素的個(gè)數(shù),稱為數(shù)組的長度

Java語言中聲明數(shù)組時(shí)不能指定其長度


int c1=10;

double c2=10;

int[] a={12,32,43,56,456};

System.out.print(a[1]);

表示輸出數(shù)組中下標(biāo)為1的值

數(shù)組的定義方法:

int[] d1=new int[5];等價(jià)于int d2={0,0,0,0,0};

int[] d1=new int[5];5表示分配了幾個(gè)地方;

int[] d1=new int[]{1,2,3,4,5};

數(shù)組元素的賦值:

????JAVA中數(shù)組元素的下標(biāo)從0開始;

? ? 元素的下標(biāo)可以是整型常量或整型表達(dá)式;

? ? 數(shù)組名[元素下標(biāo)]=元素值;

例如:

????int[] d1=new int[]{1,2,3,4,5};

? ? d1[0]=2;

? ? 將數(shù)組第一的第一個(gè)元素的值變?yōu)?;

double e =new double[5];

System.out.print(e[0]);

輸出結(jié)果為0.0,表示double類型的默認(rèn)值;

String[] f= new String[5];

System.out.print(f[0]);

String默認(rèn)值是null;

boolean[] a=new boolean[5];

System.out.print(a);

boolean的數(shù)組默認(rèn)值為false

char[] a =new char[5];

System.out.print(a);

字符類型的數(shù)組的默認(rèn)值為 (空格)

數(shù)組的遍歷:將數(shù)組中的元素一一輸出;

? ? int[] a={12,23.4,58,4};

? ? for(i=0;i<5;i++){

System.out.print(a[i]);

}

foreach()? ? ? ? ?增強(qiáng)for? ? ?for+

? ? int[] a={12,23.4,58,4};

語法:for(int n:a){

System.out.print(n);

}

遍歷數(shù)組,將數(shù)組a中的元素一一遍歷出來

找到數(shù)組中的最大值,最小值,并輸出最大值最小值:


多維數(shù)組:

二維數(shù)組:

定義:? ? ?int[][] a={{12,45,,45,45,56},

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? {23,45,98,65,45}};

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? System.out.print(a[0][0]);

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 輸出結(jié)果為12;

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? System.out.print(a[0][1]);

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 輸出結(jié)果為45;

二維數(shù)組相當(dāng)于一個(gè)一維數(shù)組中存放著兩個(gè)一維數(shù)組,

a[0]:是第一個(gè)數(shù)組的地址值,a[0][0]就是表示第一個(gè)數(shù)組中的第一個(gè)元素

a[1]:? ?是第二個(gè)數(shù)組的地址值a[1][0]就是表示第二個(gè)數(shù)組中的第一個(gè)元素

? ?????????????????????????????int[][] a={{12,45,,45,45,56},

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? {23,45,98,65,45}};

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? int []b=a[0];

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? System.out.print(b[1]);

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 輸出結(jié)果為12

遍歷二維數(shù)組:

int [][]a= {{1,2,3,4,5},{6,7,8,9,10}};

????????????????for(int i=0;i<2;i++) {

????????????????????????for(int j=0;j<5;j++) {

????????????????????????????????System.out.println(a[i][j]);

????????????????????}

????????????}

foreach方法:

for(int[]b : a) {

System.out.println(b);

for(int n : b) {

System.out.println(n);

}

}

三維數(shù)組:

三維數(shù)組相當(dāng)于三個(gè)二維數(shù)組,里面裝著多個(gè)一維數(shù)組,

表達(dá)式:? int[][][] a={

{{1,2,3},{4,5,6},{7,8,9}},

{{10,11,12},{13,14,15},{16,17,18}},

{{19,20,21},{22,23,24},{25,26,27}},

};

三維數(shù)組的遍歷:

最好使用foreach:


第一個(gè)[]表示選取那個(gè)二維數(shù)組,第二個(gè)[]表示選取二維數(shù)組中的那個(gè)一維數(shù)組,第三個(gè)[]表示選取一維數(shù)組中的那個(gè)元素

數(shù)組名+length表示數(shù)組的長度;

System.out.print(a.length);輸出該數(shù)組的長度

System.out.print(a[a.length-1]);輸出該數(shù)組最后一個(gè)元素;

int[] b=new int[5];表示為虛擬機(jī)自動(dòng)的給他賦值;

數(shù)組的冒泡排序:

從小到大:

int[] a= {23,13,45,6,78,12,4,1};

for(int i=0;i<a.length-1;i++) {

for( int j =0;j<a.length-1-i;j++) {

if(a[j]>a[j+1]) {

int temp;

temp=a[j+1];

a[j+1]=a[j];

a[j]=temp;

}

}

}

for(int n:a){

System.out.print(n+",");

}

}

}

從大到?。?/p>

int[] a= {23,13,45,6,78,12,4,1};

for(int i=0;i<a.length-1;i++) {

for( int j =0;j<a.length-1-i;j++) {

if(a[j]<a[j+1]) {

int temp;

temp=a[j+1];

a[j+1]=a[j];

a[j]=temp;

}

}

}

for(int n:a){

System.out.print(n+",");

}

}

}

用while語句來寫:

從大到?。?/p>

int[] a= {23,13,45,6,78,12,4,1};

int j=0;

while(j<a.length-1) {

int i=0;

while(i<a.length-1-j) {

if(a[i]<a[i+1]) {

int temp;

temp =a[i+1];

a[i+1]=a[i];

a[i]=temp;

}

i++;

}

j++;

}

for(int n:a){

System.out.print(n+",");

}

}

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容