将 String [] 传递给 ArrayList <Integer>

Pass a String [] to an ArrayList <Integer>

我有一个 number, number, number, ... 形式的字符串,我将字符串传递给 int numbers 并将它们放在 arraylist 中,但是循环迭代让我变少了,不知道为什么

这是我的代码:

ArrayList<Integer> servs = new ArrayList<Integer>();
String[] aux = result.split(";");
servs.clear();
for (int i =0; i< aux.length; i++)
{                       
       servs.add( Integer.parseInt(aux[i]) );                       
}

我更好地解释了@Luiggi Mendoza 是如何说的:

例如,如果结果是字符串:3;4;7,我检查 aux 的大小,我得到的 3 是正确的,但是在我检查 servs 的大小并告诉我是 2 和值 3 之后和 4

我将此代码添加到调试

System.out.println("The String result is "+result);
System.out.println("The size of ArrayList is: " + servs.size());
System.out.println("The size of the Array is: " + aux.length);

这是结果:

The String result is: 3;5;7
The size of ArrayList is: 2

The size of the Array is: 3

我查阅资料时arraylist总是少了最后一个元素 谁能帮我?谢谢

不确定您是如何检查尺寸和长度的,下面是代码。你可以看到结果。

public static void main(String[] args) {
    String result = "3;4;7";
    ArrayList<Integer> servs = new ArrayList<Integer>();
    String[] aux = result.split(";");
    for (int i =0; i< aux.length; i++)
    {                       
           servs.add( Integer.parseInt(aux[i]) );                       
    }
    System.out.println("The ArrayList Items "+ servs);
    System.out.println("The size of ArrayList is: " + servs.size());
    System.out.println("The size of the Array is: " + aux.length);
}

和结果

The ArrayList Items [3, 4, 7]
The size of ArrayList is: 3
The size of the Array is: 3

Demo