1. 程式人生 > 實用技巧 >java二維陣列

java二維陣列

一 二維陣列的定義

1.第一種方法

格式:

資料型別[][] 陣列名 = new 資料型別[大一維陣列長度][小一維陣列長度]

例如:

int[][] arr = new int[3][2];
        arr[0][0]=99;
        arr[0][1]=100;
        arr[2][0]=88;
        System.out.println(arr[0][0]);
        System.out.println(arr[0][1]);
        System.out.println(arr[2][0]);
        System.out.println(arr[
1][0]); System.out.println(arr[0]); System.out.println(arr);

2.第二種方法

格式:

資料型別[][] 陣列名=new 資料型別[大一維陣列長度][]

例如:

double[][] arr = new double[3][];
            double[] arr1 = {1.2,1.6,1.8};
            double[] arr2 = {7.7,6.6};
            double[] arr3 = {1.3};
            arr[0]=arr1;
            arr[
1]=arr2; arr[2]=arr3; System.out.println(arr[0][0]);

3.第三種方法

格式:

資料型別[][] 陣列名={{元素,元素...},{元素,元素...}...}

例如:

String[][] arr = {{"amy","tom","tony"},{"jerry","baidu"},{"blue"}};

二 二維陣列元素的訪問

  操作二維陣列時,經常需要獲取陣列中元素的值。

例如:

class ArrayDemo08 {
    public static void main(String[] args){
    
        
//定義二維陣列的方式 int[][] arr = new int[3][4]; System.out.println( arr ); System.out.println("二維陣列的長度: " + arr.length); //獲取二維陣列的3個元素 System.out.println( arr[0] ); System.out.println( arr[1] ); System.out.println( arr[2] ); System.out.println("列印第一個一維陣列的元素值"); System.out.println( arr[0][0] ); System.out.println( arr[0][1] );//訪問的為二維陣列中第1個一維陣列的第2個元素 System.out.println( arr[0][2] ); System.out.println( arr[0][3] ); System.out.println("列印第二個一維陣列的元素值"); System.out.println( arr[1][0] ); System.out.println( arr[1][1] ); System.out.println( arr[1][2] ); System.out.println( arr[1][3] ); System.out.println("列印第三個一維陣列的元素值"); System.out.println( arr[2][0] ); System.out.println( arr[2][1] ); System.out.println( arr[2][2] ); System.out.println( arr[2][3] ); } }

三 二維陣列的遍歷和累加

class ArrayDemo09 {
    public static void main(String[] args){
        //一維陣列的求累加和並遍歷
        int[] arr = {10,20,30,40,50};
        int sum = 0; 
        for (int i=0; i<arr.length; i++) {
              //System.out.println(arr[i]);
            sum += arr[i];
        }
        System.out.println("sum= " + sum);
        System.out.println("---------------------");
        
//二維陣列的求累加和並遍歷
        int[][] arr2 = { {1,2},{3,4,5},{6,7,8,9,10} };
        int sum2 = 0;
        for (int i=0; i<arr2.length; i++) {
            for (int j=0; j<arr2[i].length; j++) {
                 //System.out.println(arr2[i][j])
                sum2 += arr2[i][j];
            }
        }
        System.out.println("sum2= "+ sum2);
    }
}

四 例題

1.統計一個公司三個銷售小組中每個小組的總銷售額以及整個公司的銷售額。如下所示

第一小組銷售額為{11, 12}萬元

第二小組銷售額為{21, 22, 23}萬元

第三小組銷售額為{31, 32, 33, 34}萬元。

int[][] arr = {{11,12},{21,22,23},{31,32,33,34}};
        int sum1=0;
        int sum2=0;
        for (int i = 0;i<arr.length ;i++ ){
            for (int j = 0;j<arr[i].length ;j++ ){
                sum1+=arr[i][j];
            }
            System.out.println("第"+(i+1)+"小組的總銷售額為:"+sum1);
            sum2+=sum1;
        }
        System.out.println("=========================");
        System.out.println("整個公司的銷售額為:"+sum2);

2.隨機點名器即在全班同學中隨機的打印出一名同學名字

要做的隨機點名器,它具備以下3個內容:

儲存所有同學姓名

總覽全班同學姓名

隨機點名其中一人,列印到控制檯

System.out.println("=========================");
        String[] name ={"張三","李四","王五","趙六","孫七"};
        for (int i = 0;i<name.length ;i++ ){
            System.out.print(name[i]+" ");
        }
        System.out.println();
        Random ra = new Random();
        int i = ra.nextInt(name.length);
        System.out.println(name[i]);