[英]How to declare and initialize Arrays in java
我正在嘗試使用 for 循環初始化Arrays
。 但我不能將int
轉換或轉換為Arrays
。
import java.util.Arrays;
public class InitalizeArrays {
/**
* @param args
*/
public static void main(String[] args) {
int[] arr = {1, 2, 5, 8}; //this one is fine
Arrays[] arr2 = new Arrays[5];
for(int i=0; i<=arr2.length; i++)
{
arr2[i]=i; //How to initalize Arrays
System.out.println(arr2[i]);
}
}
}
我在這里缺少什么?
Arrays
不是您應該使用的對象……它只是一組用於處理數組的輔助方法(注意小寫的“a”)。 這是文檔:https ://docs.oracle.com/javase/8/docs/api/java/util/Arrays.html
數組的有效索引是0
到array.length - 1
(它是一個int
Arrays
(不是Arrays
- 一個實用程序類)。您需要更改
Arrays[] arr2 = new Arrays[5];
for(int i=0; i<=arr2.length; i++)
像
int[] arr2 = new int[5]; // <-- to store an int.
for(int i=0; i<arr.length; i++) // <-- or arr2.length - 1
{
arr2[i]=arr[i]; // <-- to copy arr.
}
或者您可能想使用Arrays.copyOf(int[])
類的
int[] arr2 = Arrays.copyOf(arr, arr.length + 1);
// no for loop to copy needed.
Arrays[] arr2 = new Arrays[5];
應該替換為
int[] arr2 = new int[5];
就這樣。
當然不會有任何編譯時錯誤,但會出現運行時錯誤,因為 Java 不會像對待 int[] 數組那樣對待 Arrays[]。 它將被視為另一種與整數數組沒有關系的數據類型。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.