Java語言基礎:基本數組類型 – JAVA編程語言程序開發技術文章


1.  一維數組的聲明和初始化,分成動態和靜態:


view plaincopy to clipboardprint?
// 動態創建10個整型,默認初始化為0  
int[] a1 = new int[10];  
   
// 靜態創建4個整型,並初始化為括號中的值  
int[] a2 = {1, 2, 3, 4};  
   
// 動態創建MyClass數組,需要遍歷創建數組中的每個類實例  
MyClass[] a3 = new MyClass[3];  
for (int i = 0; i < a3.length; ++i)  
    MyClass[i] = new MyClass();  
   
// 靜態創建MyClass數組,用括號中的實例初始化數組  
MyClass[] a4 = {new MyClass(), new MyClass(), new MyClass}; 
// 動態創建10個整型,默認初始化為0
int[] a1 = new int[10];
 
// 靜態創建4個整型,並初始化為括號中的值
int[] a2 = {1, 2, 3, 4};
 
// 動態創建MyClass數組,需要遍歷創建數組中的每個類實例
MyClass[] a3 = new MyClass[3];
for (int i = 0; i < a3.length; ++i)
    MyClass[i] = new MyClass();
 
// 靜態創建MyClass數組,用括號中的實例初始化數組
MyClass[] a4 = {new MyClass(), new MyClass(), new MyClass};
 


2.  多維數組可理解為數組的數組,同樣可以有兩種聲明形式:


view plaincopy to clipboardprint?
public class Main {          
    static void printInt(int[][] ints) {  
        for (int i = 0; i < ints.length; ++i)  
            for (int j = 0; j < ints[i].length; ++j)  
            System.out.println(ints[i][j]);  
    }  
   
    public static void main(String[] args) {  
        // 動態創建二維數組,並遍歷初始化之  
        int[][] ints = new int[2][2];  
        for (int i = 0; i < ints.length; ++i)  
            for (int j = 0; j < ints[i].length; ++j)  
                ints[i][j] = i + j;  
        printInt(ints);  
   
        // 靜態創建二維數組  
        int[][] ints2 = {{1, 2}, {3, 4}};  
        printInt(ints2);  
    }  

public class Main {       
    static void printInt(int[][] ints) {
        for (int i = 0; i < ints.length; ++i)
            for (int j = 0; j < ints[i].length; ++j)
            System.out.println(ints[i][j]);
    }
 
    public static void main(String[] args) {
        // 動態創建二維數組,並遍歷初始化之
        int[][] ints = new int[2][2];
        for (int i = 0; i < ints.length; ++i)
            for (int j = 0; j < ints[i].length; ++j)
                ints[i][j] = i + j;
        printInt(ints);
 
        // 靜態創建二維數組
        int[][] ints2 = {{1, 2}, {3, 4}};
        printInt(ints2);
    }
}


3.  可變數組的聲明形式:


view plaincopy to clipboardprint?
public class Main {          
    static void printInt(int[][] ints) {  
        for (int i = 0; i < ints.length; ++i)  
        {  
            for (int j = 0; j < ints[i].length; ++j)  
                System.out.print(ints[i][j] + ” “);  
            System.out.println();  
        }  
    }  
   
    public static void main(String[] args) {  
        // 動態創建二維可變數組,先創建第一維  
        int[][] ints = new int[2][];  
        // 再確定第二維的元素數  
        for (int i = 0; i < ints.length; ++i)  
            ints[i] = new int[i + 3];  
        printInt(ints);  
   
        // 靜態創建二維可變數組  
        int[][] ints2 = {{1, 2}, {3, 4, 5}};  
        printInt(ints2);  
    }  
}  
// 輸出為:  
0 0 0   
0 0 0 0   
1 2   
3 4 5  

發佈留言