Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 输出ArrayList的大小为零 私有静态列表parseStringArrayList(列表输入){ System.out.println(input.size()); 列表输出=新的ArrayList(input.size()); 对于(int index=0;index_Java_List_Arraylist - Fatal编程技术网

Java 输出ArrayList的大小为零 私有静态列表parseStringArrayList(列表输入){ System.out.println(input.size()); 列表输出=新的ArrayList(input.size()); 对于(int index=0;index

Java 输出ArrayList的大小为零 私有静态列表parseStringArrayList(列表输入){ System.out.println(input.size()); 列表输出=新的ArrayList(input.size()); 对于(int index=0;index,java,list,arraylist,Java,List,Arraylist,输出的大小始终为零 帮助?使用大小初始化Arraylist不会设置Arraylist的大小,只会在添加或删除元素时修改大小。在分配内存之前,表示列表可以拥有的节点数的容量是您实际定义的容量 private static List<Integer> parseStringArrayList(List<String> input) { System.out.println(input.size()); List<Integer> output =

输出的大小始终为零


帮助?

使用大小初始化Arraylist不会设置Arraylist的大小,只会在添加或删除元素时修改大小。在分配内存之前,表示列表可以拥有的节点数的容量是您实际定义的容量

private static List<Integer> parseStringArrayList(List<String> input) {
    System.out.println(input.size());
    List<Integer> output = new ArrayList<Integer>(input.size());
    for (int index = 0; index < output.size(); index++) {
        output.set(index, Integer.parseInt(input.get(index)));
    }
    return output;
}
私有静态列表parseStringArrayList(列表输入){
System.out.println(input.size());
列表输出=新的ArrayList(input.size());
对于(int index=0;index
当您添加和递增时,您可以使用add,在您的情况下,将执行相同的操作。
并且您希望添加输入的内容,因此最好对输入进行限制。size()

使用size初始化Arraylist不会设置Arraylist的大小,只会在添加或删除元素时修改该大小。在分配内存之前,表示列表可以拥有的节点数的容量是您实际定义的容量

private static List<Integer> parseStringArrayList(List<String> input) {
    System.out.println(input.size());
    List<Integer> output = new ArrayList<Integer>(input.size());
    for (int index = 0; index < output.size(); index++) {
        output.set(index, Integer.parseInt(input.get(index)));
    }
    return output;
}
私有静态列表parseStringArrayList(列表输入){
System.out.println(input.size());
列表输出=新的ArrayList(input.size());
对于(int index=0;index
当您添加和递增时,您可以使用add,在您的情况下,将执行相同的操作。
您希望添加输入的内容,以便更好地对输入进行限制。size()

您应该阅读ArrayList的文档,容量和大小之间有区别:


您应该阅读ArrayList的文档,容量和大小之间有区别:


既然Eran提到了您做错了什么,我想建议另一种实现parseStringArray方法的方法

new ArrayList(5).size() != new int[5].length
私有静态列表parseStringArrayList(列表输入)
{
列表输出=新的ArrayList();
for(字符串数据:输入){
add(Integer.parseInt(data));
}
返回输出;
}

既然Eran提到了您做错了什么,我想建议另一种实现parseStringArray方法的方法

new ArrayList(5).size() != new int[5].length
私有静态列表parseStringArrayList(列表输入)
{
列表输出=新的ArrayList();
for(字符串数据:输入){
add(Integer.parseInt(data));
}
返回输出;
}

TYPO:将
index
更改为
index
这就是使用调试器应该有帮助的地方。@安德烈:否,输出的容量已初始化为
input.size()
,在将元素添加到列表之前,大小保持为0。@Eran So capacity!=尺寸?@Andre Nope。容量是备份阵列的大小。size是实际存储在列表中的元素数。键入:将
index
更改为
index
,这是使用调试器应该有所帮助的地方。@Andre否,输出容量已初始化为
input.size()
,在向列表中添加元素之前,大小保持为0。@Eran So capacity!=尺寸?@Andre Nope。容量是备份阵列的大小。size是列表中实际存储的元素数。