數組用於儲存同種類型的資料,在Java中數組是一個類型,包括兩個方面的資訊,數組對象和元素。 (1)數組的定義 數組定義可以使用兩種格式:n 類型[] 數組名n 類型 數組名[] 類型是數組中元素的類型,可以是基礎資料型別 (Elementary Data Type),可以是使用者定義的類型,兩種格式沒有太大的區別。 下面的代碼定義一個日期類型的數組:n Date[] d1;n Date d2[]; 下面的代碼定義一個整型數組:n int[] i1;n int []i2;【注意】與C++不同,Java語言在定義數組的時候不需要確定數組元素的個數。 (2)數組對象的執行個體化數組的初始化包括兩個過程:n 數組對象的執行個體化n 數組元素的執行個體化數組對象的初始化主要確定數組中元素的個數,如果元素類型不是基礎資料型別 (Elementary Data Type),元素的值都是null,如果是基礎資料型別 (Elementary Data Type),系統會給出預設值。數組對象的初始化格式如下:對象名 = new 類型[元素個數]下面的代碼是對上面定義的幾個數組對象的初始化://d1數組有5個元素d1 = new Date[5]; //d2數組有4個元素d2 = new Date[4]; //i1數組有5個元素i1 = new int[5]; //i2數組有6個元素i2 = new int[6]; 執行個體化之後,如果數組元素類型是對象,預設值都是null。基礎資料型別 (Elementary Data Type)元素的預設值如表8-1所示。表8-1 基礎資料型別 (Elementary Data Type)的預設值
| 元素類型 |
預設值 |
| char |
0(儲存值,不是字元“0”) |
| byte |
0 |
| short |
0 |
| int |
0 |
| long |
0 |
| float |
0.0 |
| double |
0.0 |
| boolean |
false |
數組執行個體化也可以在定義數組的時候直接完成。下面的代碼定義有3個元素的整型數組:int i2[] = new int[3];(3)數組元素的訪問數組對象執行個體化之後,對象的值為null,或者預設值,如果是對象,需要進行元素的執行個體化。要對元素進行執行個體化,需要對每個元素進行操作。訪問資料元素的方法如下:數組名[索引]索引值從0開始,到數組元素個數減1,如果數組元素是5個,索引值從0到4。如果索引大於等於數組元素個數,會產生執行階段錯誤:
java.lang.ArrayIndexOutOfBoundsException下面的方式用於訪問上面定義的數組d1的元素:d1[0],d1[1],d[2],d[3],d[4](4)數組元素的執行個體化(賦值)要對元素進行初始化使用new關鍵字(元素類型為基礎資料型別 (Elementary Data Type)的時候不需要使用new關鍵字)。下面的代碼對d1數組的元素進行執行個體化: for(int i=0 ;i<d1.length ; i++) { d1[i] = new Date(); }對每個元素都使用new Date()進行執行個體化,但它們是不同的對象。賦值過程也可以在定義數組的時候進行。下面的代碼在定義數組的時候為對象賦值 int[] i2 = {2,3,4,5}; Date d2[] = {new Date(),new Date(),new Date()};(5)修改資料元素的值數組執行個體化之後,隨時可以對數組元素進行修改。如果數組元素的類型是基礎資料型別 (Elementary Data Type),直接通過索引訪問修改即可。下面的代碼分別為i1數組的5個元素賦值1到5: for(int i=0 ;i<i1.length ; i++) { i1[i] = i+1; }如果數組元素的類型是對象,先擷取這個對象,然後進行操作。下面的代碼修改d1數組中元素的資訊: for(int i=0 ;i<d1.length ; i++) { d1[i].setDate(i+1); }
上一講:
第十三講
基本文法練習(看看你會不會出錯)
下一講:
第十五講 方法使用 李緒成 CSDN Blog:http://blog.csdn.net/javaeeteacher 邀請您為好友:http://student.csdn.net/invite.php?u=124362&c=7be8ba2b6f3b6cc5