數組:是一個將同種類型的數據存儲在存儲單元中。java
能夠用三種方式聲明數組:數組
一、數據類型 標識符[];spa
int mothDays[];code
二、數據類型 標識符[] = new 數據類型[大小];blog
int mothDays[] =new int [12];排序
三、數據類型 標識符[] = {值1,值2,...值N};class
int mothDays[] = {31,28,31,30,31,30,31,31,30,31,30,31};import
備註:數據類型能夠是基本數據類型,也能夠是引用數據類型。變量
數組的賦值:遍歷
一、數據類型 標識符[] = {值1,值2,...值N};
int mothDays[] = {31,28,31,30,31,30,31,31,30,31,30,31};
二、數據類型 標識符[] =new 數據類型[]{值1,值2,...值N};
int mothDays[] =new int []{31,28,31,30,31,30,31,31,30,31,30,31};
3 、標識符[下標值] = 值N;
mothDays[2] = 28;
數組的遍歷:
一、for(int i = 0; i<數組名.length; i++){
//遍歷的操做執行語句
}
二、for(數據類型 迭代變量: 數組名){
//經過迭代變量操做;
}
使用API中的Arrays管理數組的排序、複製、查找、填充。
排序:
Arrays.sort[數組名]; //所有升序排序
Arrays.sort[數組名,下標值1,下標值2]; //部分排序
複製:
1 import java.util.Arrays; 2 3 public class ArraysCopy{ 4 public static void main(String [] agrs){ 5 int a []={1,3,5,7,6,4,2}; 6 System.out.println("原數組:"); 7 for(int temp: a){ 8 System.out.print(temp+" "); 9 } 10 System.out.println(); 11 int b[] = Arrays.copyOf(a,10); 12 int c[] = Arrays.copyOf(a,5); 13 int d[] = Arrays.copyOfRange(a,2,5); 14 int e[] = new int[3]; 15 System.arraycopy(a,2,e,0,3); 16 17 System.out.print("b數組從a數組中複製的結果:"); 18 for (int temp: b){ 19 System.out.print(temp+" "); 20 } 21 System.out.println(); 22 23 System.out.print("c數組從a數組中複製的結果:"); 24 for (int temp: c){ 25 System.out.print(temp+" "); 26 } 27 System.out.println(); 28 29 System.out.print("d數組從a數組中複製的結果:"); 30 for (int temp: d){ 31 System.out.print(temp+" "); 32 } 33 System.out.println(); 34 35 System.out.print("e數組從a數組中複製的結果:"); 36 for (int temp: e){ 37 System.out.print(temp+" "); 38 } 39 System.out.println(); 40 41 } 42 }
結果:
原數組:
1 3 5 7 6 4 2
b數組從a數組中複製的結果:1 3 5 7 6 4 2 0 0 0
c數組從a數組中複製的結果:1 3 5 7 6
d數組從a數組中複製的結果:5 7 6
e數組從a數組中複製的結果:5 7 6
查找:Arrays中的方法。
binarySeacher(int a[], int key); //第一個參數被查找的數組,第二個參數是要查找的參數。
binarySeacher(int a[], int from, int to,int key);
填充:在數組賦值的時候使用到。
fill(int a[],int key); //第一個參數被填充的數組,第二個參數是要賦給每一個數組的參數值。
fill(i nt a[],int from, int to,int key)
1 import java.util.Arrays; 2 3 public class ArraysFill{ 4 public static void main(String [] agrs){ 5 int a []=new int[5]; 6 Arrays.fill(a,10); 7 System.out.print("a數組中填充賦值初始化的結果:"); 8 for(int temp: a){ 9 System.out.print(temp+" "); 10 } 11 System.out.println(); 12 Arrays.fill(a,3,4,20); 13 14 System.out.print("a數組部分填充賦值的結果:"); 15 for (int temp: a){ 16 System.out.print(temp+" "); 17 } 18 System.out.println(); 19 20 21 } 22 }
結果:
a數組中填充賦值初始化的結果:10 10 10 10 10 a數組部分填充賦值的結果:10 10 10 20 10