[英]Adding integers to an int array
我正在嘗試將整數添加到 int 數組中,但 Eclipse 說:
無法對數組類型 int[] 調用 add(int)
這對我來說完全不合邏輯。 我也試過addElement()
和addInt()
,但它們也不起作用。
public static void main(String[] args) {
int[] num = new int[args.length];
for (String s : args){
int neki = Integer.parseInt(s);
num.add(neki);
}
要將元素添加到數組,您需要使用以下格式:
array[index] = element;
其中array
是您聲明的數組, index
是元素將存儲的位置, element
是您要存儲在數組中的項目。
在你的代碼中,你想要做這樣的事情:
int[] num = new int[args.length];
for (int i = 0; i < args.length; i++) {
int neki = Integer.parseInt(args[i]);
num[i] = neki;
}
該add()
方法可用於Collections
像List
和Set
。 如果您使用的是ArrayList
(請參閱文檔),則可以使用它,例如:
List<Integer> num = new ArrayList<>();
for (String s : args) {
int neki = Integer.parseInt(s);
num.add(neki);
}
數組沒有 add 方法。 你用num[i]=value;
為數組的元素num[i]=value;
.
public static void main(String[] args) {
int[] num = new int[args.length];
for (int i=0; i < num.length; i++){
int neki = Integer.parseInt(args[i]);
num[i]=neki;
}
}
數組具有固定長度。 你不能“添加”它。 您在開始時定義它將持續多長時間。
int[] num = new int[5];
這將創建一個整數數組,其中包含 5 個“桶”。 每個桶包含 1 個整數。 首先,這些都將是0
。
num[0] = 1;
num[1] = 2;
上面的兩行將數組的第一個和第二個值設置為1
和2
。 現在你的數組看起來像這樣:
[1,2,0,0,0]
正如您所看到的,您在其中設置了值,而不是將它們添加到末尾。
如果您希望能夠創建您添加的數字列表,您應該使用 ArrayList。
數組與ArrayList
不同,您可以在其上調用add
。 你首先需要一個索引。 在for
循環之前聲明i
。 然后您可以使用數組訪問表達式將元素分配給數組。
num[i] = s;
i++;
您不能在 Java 中對數組使用 add 方法。
要將東西添加到數組中,請這樣做
public static void main(String[] args) {
int[] num = new int[args.length];
for (int i = 0; i < args.length; i++){
int neki = Integer.parseInt(s);
num[i] = neki;
}
如果您真的想使用 add() 方法,請考慮使用ArrayList<Integer>
代替。 這有幾個優點 - 例如,它不受創建時設置的最大大小的限制。 您可以無限期地繼續添加元素。 然而,它沒有數組那么快,所以如果你真的想要性能堅持數組。 它還要求您使用 Integer 對象而不是原始 int 類型,這可能會導致問題。
ArrayList 示例
public static void main(String[] args) {
ArrayList<Integer> num = new ArrayList<Integer>();
for (String s : args){
Integer neki = new Integer(Integer.parseInt(s));
num.add(s);
}
org.apache.commons.lang.ArrayUtils 可以做到這一點
num = (int []) ArrayUtils.add(num, 12); // builds new array with 12 appended
你有一個int
數組,它是一個原始類型,原始類型沒有 add 方法。 你應該尋找Collections
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.