簡體   English   中英

將整數添加到 int 數組

[英]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()方法可用於CollectionsListSet 如果您使用的是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;

上面的兩行將數組的第一個和第二個值設置為12 現在你的數組看起來像這樣:

[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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM