HOWTO · Java

在 Java 中宣告一個陣列

本文介紹如何在 Java 中宣告陣列。

在 Java 中宣告一個陣列

下面提到了幾種在 Java 語言中宣告一維陣列的方法。在給出的程式碼之後給出了詳細的描述。

import java.util.stream.IntStream;

public class DeclareAnArray {
  public static void main(String[] args) {
    int[] intArr1 = new int[3];
    int[] intArr2 = {3, 4, 5};
    int[] intArr3 = new int[] {3, 4, 5};
    int intArr4[] = IntStream.range(0, 10).toArray();
    int[] intArr5 = IntStream.of(2, 5, 3, 8, 1, 9, 7).toArray();
    int[][] intArr6 = new int[5][2];
    int intArr7[][] = new int[5][2];
    int[] intArr8[] = new int[5][2];
    int[][] intArr9 = {{1, 2}, {1, 2}, {1, 2}, {1, 2}, {1, 2}};
  }
}

描述是按照程式碼中語句的順序依次給出的。

int[] intArr1 = new int[3]; 是 Java 語言中宣告一維陣列的最簡單方法。首先,編寫我們想要建立陣列的資料型別,因為 int 是資料型別。現在繼續在資料型別名稱後新增方括號 [],這意味著我們已經宣告瞭一個未定義大小的整數陣列。在資料型別名稱後給一個變數名稱作為 intArr1。向右移動,在 = 運算子之後放置一個 new 關鍵字。關鍵字 new 狀態例項化一個物件並在堆區域中為其分配記憶體。它繼續進行最初給定的資料型別的建構函式呼叫。由於要宣告陣列,建構函式採用方括號中的陣列大小。= 運算子將建立的物件分配給引用變數。因此,一個大小為 3 的整數陣列被宣告為變數為 intArr1
int[] intArr2 = {3, 4, 5}; 是另一種在一個地方宣告和例項化值的方法。在這種情況下,我們在 = 運算子的左側給出資料型別和變數名稱。在它的右側,我們直接在大括號 {} 中提供值。在這種情況下,陣列的大小通過宣告的值數量在內部進行評估。因此,建立了一個大小為 3 的整數陣列,其值分別為索引 0,1,2 處的 3,4 和 5。考慮一下,我們在例項化時不向陣列提供任何資料,然後使用其預設值初始化陣列。

int[] intArr3 = new int[]{3, 4, 5}; 在所有方面都與第二個類似,但相當冗長。這裡的陣列宣告與第一種方式相同。唯一的區別是,我們沒有明確給出大小,因為在 {} 大括號中定義值時,大小是隱式計算的。因此,一個大小為 3 的整數陣列和初始值也被初始化。

下一個方法是 int intArr4[] = IntStream.range(0, 10).toArray();。通過這種方式,我們使用 Java 8 及其功能來建立和初始化所需型別的陣列。和左邊的宣告原型不同。這是另一種宣告陣列的方法,其中方括號與變數名一起。所以 intArr4[] 是一個有效的名稱。繼續前進,IntStreamjava.util.Stream 包中提供的介面。方法 rangeIntStream 介面中的靜態工廠方法,返回整數值的 IntStream。它採用兩個值作為引數來定義陣列的下限(包含)和上限(不包含)。最後,使用 toArray 函式將生成的整數流轉換為陣列,這是一個終端運算子。

int [] intArr5 = IntStream.of(2, 5, 3, 8, 1, 9, 7).toArray(); 表示另一種宣告陣列的方式。這表示在資料型別和方括號之間放置一個空格是有效的。在 Java 8 中,我們可以使用 of() 函式來定義整數值流。指定的值按順序儲存在整數 Stream 中。然後使用 toArray 函式將該流收集到一個陣列中。

在 Java 中宣告一個二維陣列

二維陣列是將行和列完全組合在一個單元中。二維陣列的宣告包括按順序定義行和列。第一個值定義行數,第二個值定義列數。

int intArr7[][] = new int[5][2];int[] intArr8[] = new int[5][2]; 是大小為 5 x 2 的陣列的有效宣告,其中 5 是行數,2 是列數。

int[][] intArr9={ {1,2}, {1,2}, {1,2}, {1,2}, {1,2} }; 是一種定義二維陣列的方法,其中我們沒有明確提供。大小是通過花括號中的引數數量在內部計算的。並且花括號的巢狀表示值將被插入到 row1 中,並在前面以逗號分隔的值進行處理。