java筆記:第5章 數組

第5章 數組java

5.1 數組的定義數組

•  數組是固定的不能擴展ide

•  能夠存儲基本數據類型或對象或接口對象

•  經過數組名和下標能夠訪問各元素,下標從0開始排序

5.2 聲明數組索引

•  數組的聲明包括數組名和所包含的元素類型接口

•      聲明方法: 數組類型  數組名[ ];   或   數組類型[ ] 數組名; 內存

  例如 int age[ ]; 或 int [ ] age; 均可以。it

5.3 建立數組class

•    利用new 來爲數組型變量分配內存空間

•    數組名=new  數組元素類型[元素個數];

 例如 age=new int[10];

      必須分配內存後才能使用數組

      兩步能夠合併,如:int age[ ]=new int[10];

 

5.4 數組初始化

數組的初始化:用new建立或直接靜態初始化

•    一維數組:int a[]=new int[5];      // 定義並初始化

             int a[];  a=new int[5];  // 先聲明後初始化

             int a[]={1,2,3,4};      // 靜態初始化

             int size=5; int a[]=new int[size];//在上面通用的基礎上,用變量定義數組的長度。

int a[]=new int[5]; // 此時系統爲數組a中的每個元素都初始化爲0;

double d[]=new double[5];//  此時系統爲數組d中的每個元素都初始化爲0.0;

String s[]=newString[5];// s[i]=null, (0<=i<=4);   s.length=5                           

•     多維數組:Java中多維數組的聲明和初始化應按從高維到低維(即從左到右)的順序進行;

必須指定高層維數,不能在空維後定義數組維!

       錯誤示例:int a[][][]=new int[][][]; // 高層維數未指定

int a[][][]=new int[1][][4]; //不能在空維後定義數組維

int a[][][]=new int [][][4];

       正確示例:int a[][][]=new int[1][][];

          int a[][][]=new int[1][4][];

          int a[][][]=new int[1][4][5];

總結:定義數組時,第一維必須定義!且要從高維開始定義,空維後不能定義;

二維數組的初始化

•    在Java語言中,因爲把二維數組看做是數組的數組,數組空間不是連續分配的,因此不要求二維數組每一維的大小相同。

•    靜態初始化        int intArray[ ][ ]={{1,2},{2,3},{3,4,5}};

•    動態初始化(難點、很重要)

int a[ ][ ] = new int[2][ ];

       a[0] = new int[3];

       a[1] = new int[5]; 

5.5 數組元素的使用

    經過下標訪問數組元素,而不能只經過數組名訪問整個數組。

注意:二維數組中:數組名.length返回的是數組的行數。數組名[行號].length返回的是該行的列數。

每一個數組都有一個屬性length指明數組的長度,例如arr.length指明數組arr的長度。注意length是屬性不是方法!

5.6 數組的方法

    數組複製

      循環賦值

      System.arraycopy(src,srcPos, dest, destPos, length);

System.arraycopy(原始數組, 起始索引, 目標數組, 起始索引, 複製長度);

      注意:複製的長度不要超過目標串的長度。不然會發生異常。

      數組拷貝示例:

public class Test {

   public static void main(String[] args) {     

       int arrInt1[]={12,34,5,1,45};

       int arrInt2[]=new int[6];

       System.arraycopy(arrInt1,0, arrInt2, 1, 5);

       for (int i = 0; i < arrInt2.length; i++) {

          System.out.print(arrInt2[i]+" ");

       }

   }

}

輸出結果爲:0 12 34 5 1 45

    在java.util.Arrays包中:數組填充Arrays.fill( ) 

      當咱們配置一個數組以後,其會依數據型態來給定默認值,例如整數數組就初始爲0,您能夠使用Arrays.fill()方法來將全部的元素設定爲指定的值。

    在java.util.Arrays包中:數組比較Arrays.equals( ):

比較兩個數組中的元素值是否所有相等,若是是將傳回true,不然傳回false。

    在java.util.Arrays包中:數組排序Arrays.sort(數組名):

這個方法能夠對指定的數組排序,所使用的是快速排序法。

相關文章
相關標籤/搜索