動態初始化一維數組詳解

/*
        動態初始化一維數組
                1.動態初始化一維數組,會在堆內存中分配這個數組
                並且數組中每一個元素都採用默認值
            
            byte short int long 0
            float double 0.0
            boolean false
            char \u0000
            引用 null
            
            
                2.什麼時候動態初始化,什麼時候靜態初始化
                        1)無論是動態初始化還是靜態初始化,最終的內存分佈都是一樣的
                        2)如果在創建數組的時候,知道數組中應該存儲什麼數據,採用靜態初始化方法
                    如果在創建數組的時候,無法預測到數組中存儲什麼元素,只實現開闢空間
                    ,則使用動態初始化
*/


public class fuck3{
    
    public static void main(String[] args){
        
        int[] a1=new int[4];
        
        for(int i=0;i<a1.length;i++){
            System.out.println(a1[i]);
        }
        
        //引用類型的數組
        Object [] objs=new Object[3];
        
        for(int index=0;index<objs.length;index++){
            
            Object o=objs[index];
            
            //o.toString();  注意空指針異常,因爲引用類型的數組默認值是null
            System.out.println(o);//null null null
        }
        
    }
    
}


舉例,動態定義一個int類型的數組
// 下面的語句分配內存
int * pArr = new int[1000];
if (pArr == null)
{
// 內存分配錯誤
}
// 下面的語句初始化
memset(pArr,0,sizeof(int) * 1000);
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章