標籤:
【數組】 註:C/C++中數組可以儲存在棧中,但是Java中不可以(因為Java中是引用)。 【一維數組】 聲明: type var[]; 或者 type[] var;Java語言產生數組時不能指定其長度(數組中元素的個數),例如int a[4]是非法的(--因為Java中資料分配在堆中,是動態分配的;C語言可以)。 數組對象的建立:數組名 = new 數組元素的類型[數組元素的個數] 【記憶體配置】 註:這表示在記憶體中new出5個對象,每個對象的初始化值為0(預設值)。 new int[5]與int[] arr不同:前者合法,後者非法。 【元素為引用資料類型的數組】 注意:元素為引用資料類型的數組中的每一個元素都需要執行個體化。 註:<1>days資料類型為數組,Date[]作為一個類。 <2>days = new Date[3];表示參考型別的資料,即days(棧中)指向堆中的一個地區Date[3]。 <3>days[i] = new Date(2004,4,i++);表示一個引用,days[1]指向堆中的另外一個地區Date(2004,4,1)。 【數組初始化】 動態初始化:數組定義與數組元素分配空間和賦值的操作分開進行。 (一定要記住數組要先分配好空間再使用,不一定非要賦值) 註:<1>int a[];----數組定義(棧) <2>a=new int[3];----分配空間(堆) <3>a[0]=3;----賦值操作(堆) 靜態初始化:在定義數組的同時就為數組元素分配空間並賦值。 【數組元素的預設初始化】 數組是參考型別,它的元素相當於類的成員變數,因此數組分配空間後,每個元素也被按照成員變數的規則被隱式初始化。 註:<1>a[3]是int類型,int類型預設初始值為0. <2>days[2]是參考型別,參考型別預設初始值為NULL。 【數組元素的引用】 註:
數組的length是一個屬性,不是一個方法(因此不要寫成a.length())。 【String[] args】 在Java的main函數中輸入以下的語句: for(int i=0;i<args.length;i++){ System.out.println(args[i]); } 編譯運行後無任何顯示。 輸入命令列參數:java test.java 11 22 33 aa bb cc 輸出結果為:11 22 33 aa bb cc 【基礎類型的封裝類】 一般基礎類型資料載入在棧中,如果需要儲存在堆中,則需要封裝為對象。 例如:byte-->Byte,int-->Integer,char-->Character...... 這樣就可以實現資料之間的轉換,因為基礎類型的資料已經轉換為Class對象,在API中就有一系列對應的方法。 例如: static double = Double(String s);----傳入的參數為String類型,返回的double類型。
Java——數組