1. 程式人生 > 其它 >java 1.7 陣列

java 1.7 陣列

陣列

宣告:

語法:

dataType [] arrsyRefvar;//首選

或 dataTybe arrsyRefvar[ ]

例項:

``

int[] arrsys;
int arrsy[];

建立:

語法:

arrayRefVar = new dataTyoe[arraySize];

ataType[] arrayRefVar = {value0, value1, ..., valuek};

上面的語法語句做了兩件事:

一、使用 dataType[arraySize] 建立了一個數組。

二、把新建立的陣列的引用賦值給變數 arrayRefVar。

陣列變數的宣告,和建立陣列可以用一條語句完成,如下所示

dataType[] arrayRefVar = new dataType[arraySize];

例項1:

``

public class Test019 {
    public static void main(String[] args) {
       //int[] arrsys;
        // int arrsy[];
        //定義陣列
        int[] arrsy=new int[5];//定義陣列
        arrsy [0]=1;
        arrsy [1]=2;
        arrsy [2]=3;
        arrsy [3]=4;
        arrsy [4]=5;
        for (int i = 0; i < arrsy.length; i++) {
            System.out.print(arrsy[i]+" ");//遍歷陣列。
        }
    }
}

輸出結果:1 2 3 4 5

例項2:

``

public class Test019 {
    public static void main(String[] args) {
       //int[] arrsys;
        // int arrsy[];
        //定義陣列
        int[] array=new int[5];//定義陣列
        array [0]=1;
        array [1]=2;
        array [2]=3;
        array [3]=4;
        array [4]=5;
        int sum=0;
        //計算陣列元素的和。
        for (int i = 0; i < array.length; i++) {
          sum+=array[i];
        }
        System.out.println(sum);
    }
}

輸出結果 :15

例項3:

public static void main(String[] args) {
   //int[] arrsys;
    // int arrsy[];
    //定義陣列
    int[] array=new int[5];//定義陣列
    array [0]=1;
    array [1]=2;
    array [2]=3;
    array [3]=4;
    array [4]=5;
    int max= array[0];
    for (int i = 1; i <array.length; i++) {
        if(array[i]>max){
            max=array[i];
    }

輸出結果:5

陣列的使用:

for-each 迴圈

語法:

for(type element: array) {

System.out.println(element);

}

例項:

``

public static void main(String[] args) {
   //int[] arrsys;
    // int arrsy[];
    //定義陣列
    int[] array=new int[5];//定義陣列
    array [0]=1;
    array [1]=2;
    array [2]=3;
    array [3]=4;
    array [4]=5;
    for (int i : array) {
        System.out.print(i);
    }
    }}

輸出結果:1 2 3 4 5

陣列作為函式的引數:

陣列可以作為引數傳遞給方法。

列印陣列元素

``

 public static void main(String[] args) {
       //int[] arrsys;
        // int arrsy[];
        //定義陣列
        int[] array=new int[5];//定義陣列
        array [0]=1;
        array [1]=2;
        array [2]=3;
        array [3]=4;
        array [4]=5;
        printArrar(array);
        }
        //列印陣列元素
        public static void printArrar(int[] array){
            for (int i = 0; i <array.length; i++) {
                System.out.print(array[i]+" ");
            }
        }
}

輸出結果:1 2 3 4 5

陣列作為函式的返回值:

反轉陣列:

``

 public static void main(String[] args) {
       //int[] arrsys;
        // int arrsy[];
        //定義陣列
        int[] array=new int[5];//定義陣列
        array [0]=1;
        array [1]=2;
        array [2]=3;
        array [3]=4;
        array [4]=5;
        int[] reverse=reverse(array);
        printArrar(reverse);
        }
        //反轉陣列
        public static int [] reverse(int[] array){
        int[] result=new int [array.length] ;
        //反轉
            for (int i = 0,j=result.length-1; i < array.length; i++,j--) {
                result[j]=array[i];
            }
            return result;
        }
        //複製陣列
    public static void printArrar(int[] array){
        for (int i = 0; i <array.length; i++) {
            System.out.print(array[i]+" ");
        }
    }
}

輸出結果:5 4 3 2 1

多維陣列

多維陣列可以看成是陣列的陣列,比如二維陣列就是一個特殊的一維陣列,其每一個元素都是一個一維陣列,例如:

String[][] str = new String [3] [4];

多維陣列的動態初始化:

(以二維陣列為例)

格式:

type[][] typeName = new type[typeLength1] [typeLength2];

例如:

int [][] array = {{1,2},{2,3},{3,4}};

例項1:

取出二維陣列中的某個元素:

``

public static void main(String[] args) {
        int [][] array = {{1,2},{2,3},{3,4}};
        System.out.println(array[1][1]);
        System.out.println(array[0][1]);
        

    }
}

輸出結果:3

2

例項:

遍歷二維陣列中的元素:

``

 public static void main(String[] args) {
        int [][] array = {{1,2},{2,3},{3,4}};
        for (int i = 0; i < array.length; i++) {
            for (int j = 0; j < array[i].length; j++) {
                System.out.print(array[i][j]+" ");
            }

        }

    }
}

輸出結果:1 2 2 3 3 4