java中數組

//1.如何定義一個數組
        //1.1數組的聲明
        String[] names;
        int scores[];
        //1.2初始化
        //第一種:靜態初始化:初始化數組與給數組元素賦值同時進行。
        names = new String[]{"周爽","郭強強","俞乾龍"};
        
        //第二種:動態初始化:初始化數組與給數組元素賦值分開進行。

        scores = new int[4];

       第三種:直接初始化,int[] arr={1,2,23};這樣也可以。

      但是

        int arr1[];
        arr1={1,2,2,3};//錯誤的

        int arr1[];
        arr1=new int[]{1,2,2,3};//這樣也可以。

        //2.如何調用相應的數組元素:通過數組元素的下角標的方式來調用。
        //下角標從0開始,到n -1 結束。其中n表示的數組的長度。
        scores[0] = 87;
        scores[1] = 89;
        scores[3] = 98;
        //3.數組的長度:通過數組的length屬性。
        System.out.println(names.length);//3
        System.out.println(scores.length);//4
        //4.如何遍歷數組元素
        for(int i = 0;i < names.length;i++){
            System.out.println(names[i]);

        }

//對於基於基本數據類型的變量創建的數組:byte short int long float double char boolean
        //1.對於byte short int long 而言:創建數組以後,默認值爲0

//2.對於float  double而言:默認值是0.0

//3.對於char而言:默認爲空格

//4.對於boolean而言:默認爲false

//5.對於引用類型的變量構成的數組而言:默認初始化值爲null。以String爲例


內存的結構(方法區中包含常量池):


數組在內存中的結構


多維數組


二位數組的初始化:

String[][] names;
        //1.二維數組的初始化
        scores2 = new int[][]{{1,2,3},{3,4,5},{6}};//靜態初始化
        
        names = new String[6][5];//動態初始化的方式一
        names = new String[6][];//動態初始化的方式二
        names[0] = new String[5];
        names[1] = new String[4];
        names[2] = new String[7];


//錯誤的初始化方式
        //names = new String[][];
        //names = new String[][5];


//4.如何遍歷二維數組
        for(int m = 0;m < scores2.length;m++){//控制行數
            for(int n = 0;n < scores2[m].length;n++){
                System.out.print(scores2[m][n] + "  ");
            }
            System.out.println();
        }

多維數組的內存圖解:

二位數組一個常見的異常:

int[][] j = new int[3][];
        j[2][0] = 12;

空指針異常,第一句執行完,二維數組的每一個元素都是null,所以執行第二行會報空指針。

發佈了37 篇原創文章 · 獲贊 3 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章