更新時間:2022-06-01 11:07:22 來源:動力節點 瀏覽1367次
在本教程中,動力節點小編將帶大家了解如何在 Java 中聲明和初始化數組。
通過提供類型和名稱,我們在 Java 中聲明一個數組,就像我們聲明其他變量一樣:
int[] myArray;
要在聲明數組時初始化或實例化數組,這意味著我們在創建數組時分配值,我們可以使用以下速記語法:
int[] myArray = {13, 14, 15};
或者,您可以生成一個值流并將其分配回數組:
int[] intArray = IntStream.range(1, 11).toArray();
int[] intArray = IntStream.rangeClosed(1, 10).toArray();
int[] intArray = IntStream.of(1, 2, 3, 4, 5, 6, 7, 8, 9, 10).toArray();
Java 中數組對象的聲明遵循與聲明 Java 變量相同的邏輯。我們識別數組元素的數據類型和變量的名稱,同時添加方括號[]來表示它的數組。
以下是聲明數組的兩種有效方法:
int intArray[];
int[] intArray;
第二個選項通常是首選,因為它更清楚地表明了哪種類型intArray。
請注意,我們只創建了一個數組引用。由于大小未知,因此沒有為數組分配內存,我們也無能為力。
要使用數組,我們可以使用new關鍵字對其進行初始化,后跟數組的數據類型,以及包含其大小的方括號:
int[] intArray = new int[10];
這會為大小為 的數組分配內存10。這個大小是不可變的。
Java 根據元素類型使用默認值填充我們的數組 -0對于整數、false布爾值、null對象等。讓我們更多地了解如何用我們想要的值實例化一個數組。
使用非默認值初始化數組的緩慢方法是一一分配值:
int[] intArray = new int[10];
intArray[0] = 22;
在本例中,您聲明了一個包含 10 個元素的整數數組對象,因此您可以使用其索引值初始化每個元素。
{}最常見和最方便的策略是使用包含數組元素的大括號同時聲明和初始化數組。
以下代碼使用三個元素(13、14 和 15)初始化一個整數數組:
int intArray[] = {13, 14, 15};
請記住,數組對象的大小將是您在大括號內指定的元素數。因此,該數組對象的大小為 3。
此方法也適用于對象。如果我們想初始化一個由三個字符串組成的數組,我們會這樣做:
int[] stringArray = {"zelda", "link", "ganon"};
Java 也允許我們使用new關鍵字來初始化數組:
int[] intArray = new int[]{13, 14, 15};
int[] stringArray = new String[]{"zelda", "link", "ganon"};
它的工作方式相同。
注意:如果您要創建一個返回初始化數組的方法,則必須使用new帶有花括號的關鍵字。在方法中返回數組時,單獨的花括號不起作用:
public String[] getNames() {
return new String[]{"zelda", "link", "ganon"}; // Works
}
public String[] getNames() {
return {"zelda", "link", "ganon"}; // Doesn't work
}
如果您要聲明和初始化一個整數數組,您可以選擇使用IntStreamJava 接口:
int[] intArray = IntStream.range(1, 11).toArray();
上面的代碼創建了一個由十個整數組成的數組,其中包含數字 1 到 10:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
該IntStream接口有一個range()將序列的開頭和結尾作為參數的方法。請記住,第二個參數不包括在內,而第一個參數是。
然后我們使用methodtoArray()方法將其轉換為數組。
注意: IntStream只是可用于創建范圍的少數類之一。您也可以在這些示例中的任何一個中使用 aDoubleStream或LongStream。
如果您想覆蓋該特征,并包含最后一個元素,您可以使用IntStream.rangeClosed():
int[] intArray = IntStream.rangeClosed(1, 10).toArray();
這將產生一個包含 10 個整數的數組,從 1 到 10:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
該IntStream.of()方法的功能與聲明具有一定數量值的數組非常相似,例如:
int[] intArray = new int[]{6, 2, 4, 5, 7};
在這里,我們指定調用中的元素of():
int[] intArray = IntStream.of(6, 2, 4, 5, 7).toArray();
這將生成一個保留元素順序的數組:
[6, 2, 4, 5, 7]
或者,您甚至可以sorted()在此調用方法,以便在初始化數組時對其進行排序:
int[] intArray = IntStream.of(6, 2, 4, 5, 7).sorted().toArray();
這導致具有以下元素順序的數組:
[2, 4, 5, 6, 7]
可用于初始化數組的最強大的技術之一是使用for循環使用一些值對其進行初始化。
讓我們使用一個循環來初始化一個值為 0 到 9 的整數數組:
int[] intAray = new int[10];
for (int i = 0; i < intArray.length; i++) {
int_array[i] = i;
}
這與以下任何較短的選項相同:
int[] intArray = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
int[] intArray = new int[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
int[] intArray = IntStream.rangeClosed(0, 9).toArray();
當您有更復雜的邏輯來確定數組元素的值時,循環比其他方法更理想。
例如,通過for循環語句,我們可以做一些事情,比如在偶數索引處制作兩倍大的元素:
int[] intArray = new int[10];
for (int i = 0; i < intArray.length; i++) {
if (i % 2 == 0) {
int_array[i] = i * 2;
} else {
int_array[i] = i;
}
}
在本文中,我們發現了在 Java 中聲明和初始化數組的不同方式和方法。我們使用花括號{}、new關鍵字和for循環來初始化 Java 中的數組,以便您在不同情況下有多種選擇!
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習