java - Arraylist 是一个比预期长的元素

标签 java arraylist element

<分区>

我想创建一个 Arraylist 来保存用户输入的字符串:

System.out.println("How many words do you want to enter?");
int numVerbs = scan.nextInt();
ArrayList <String> verbs = new ArrayList <String> (numVerbs);
System.out.println("Start entering words:");
for(int i=0;i<=numVerbs;i++){
   verbs.add(scan.nextLine());
}
System.out.print(verbs.size());
}

问题是,当我创建字符串并将其添加到列表中,然后打印出数组列表的大小时,它比我想要的大了一个元素。

例如,我将输入 3 作为我要添加的单词数,然后我将输入 3 个单词。但是,当我打印回 arraylist 的大小时,它是 4,而不是 3。

也许它与 verbs.add to an empty list 有关? Idk,我不知所措。

最佳答案

1开始循环:

for(int i = 1; i <= numVerbs; i++){ ... }

或从 i <= numVerbs 更改条件至 i < numVerbs

for(int i = 0; i < numVerbs; i++){ ... }

这是必要的,因为 for 循环从 0 开始。然后循环直到输入的数字包含,因此您执行的迭代次数比要求的多。

关于java - Arraylist 是一个比预期长的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48037243/

相关文章:

java - 登录/注销后防止 Spring Security 302 重定向

javascript - 使用 javascript 获取元素内的文本

java - 一次向 Java 中的 ArrayList 添加多个项目

Jquery - 查找下一个输入 :text element after a known element

java - 如何为 NetBeans Java Web App 项目向 Ant 添加 jar 文件以便构建它?

java - Python - 与子进程通信

java - 通过 Java 使用 Drive API

Android XMLparse 到 Arraylist

java - 从 ArrayList 中删除元素

java - Java中二维数组类型的ArrayList