1. 程式人生 > >Java陣列宣告、建立、初始化

Java陣列宣告、建立、初始化

覺得講的蠻清楚的~

一維陣列的宣告方式:
type var[]; 或type[] var;

宣告陣列時不能指定其長度(陣列中元素的個數),

Java中使用關鍵字new建立陣列物件,格式為:
陣列名 = new 陣列元素的型別 [陣列元素的個數]

例項:
TestNew.java:

程式程式碼:

  1. publicclass TestNew  
  2. {  
  3. publicstaticvoid main(String args[]) {  
  4. int[] s ;  
  5. int i ;  
  6.          s = newint[5] ;  
  7. for(i = 0 ; i < 5 ; i++) {  
  8.              s[i] = i ;  
  9.          }  
  10. for(i = 4 ; i >= 0 ; i--) {  
  11.              System.out.println("" + s[i]) ;  
  12.          }  
  13.      }   


初始化:

1.動態初始化:陣列定義與為陣列分配空間和賦值的操作分開進行;
2.靜態初始化:在定義數字的同時就為陣列元素分配空間並賦值;
3.預設初始化:陣列是引用型別,它的元素相當於類的成員變數,因此陣列分配空間後,每個元素也被按照成員變數的規則被隱士初始化。
例項:


TestD.java(動態):

程式程式碼:

  1. publicclass TestD  
  2. {  
  3. public
    staticvoid main(String args[]) {  
  4. int a[] ;  
  5.          a = newint[3] ;  
  6.          a[0] = 0 ;  
  7.          a[1] = 1 ;  
  8.          a[2] = 2 ;  
  9.          Date days[] ;  
  10.          days = new Date[3] ;  
  11.          days[0] = new Date(2008,4,5) ;  
  12.          days[1] = new Date(2008,2,31) ;  
  13.          days[2] = new Date(2008,4,4) ;  
  14.      }  
  15. }  
  16. class Date  
  17. {  
  18. int year,month,day ;  
  19.      Date(int year ,int month ,int day) {  
  20. this.year = year ;  
  21. this.month = month ;  
  22. this.day = day ;  
  23.      }  
  24. }  


TestS.java(靜態):

程式程式碼:

  1. publicclass TestS     
  2. {     
  3. publicstaticvoid main(String args[]) {     
  4. int a[] = {0,1,2} ;     
  5.          Time times [] = {new Time(19,42,42),new Time(1,23,54),new Time(5,3,2)} ;     
  6.      }     
  7. }     
  8. class Time     
  9. {     
  10. int hour,min,sec ;     
  11.      Time(int hour ,int min ,int sec) {     
  12. this.hour = hour ;     
  13. this.min = min ;     
  14. this.sec = sec ;     
  15.      }     
  16. }    


TestDefault.java(預設):

程式程式碼:

  1. publicclass TestDefault     
  2. {     
  3. publicstaticvoid main(String args[]) {     
  4. int a [] = newint [5] ;     
  5.          System.out.println("" + a[3]) ;     
  6.      }     
  7. }