Java中的迭代器
我在java中遇到了一个我无法理解的异常现象 在我的主要课程中,我有以下代码:Java中的迭代器,java,iterator,Java,Iterator,我在java中遇到了一个我无法理解的异常现象 在我的主要课程中,我有以下代码: (import java.util.*;) ... Scanner input = new Scanner(System.in); String name; int i = 1; System.out.println("How many names do you want to enter?"); int iteratorCount = input.nextInt(); iteratorCount++;
(import java.util.*;)
...
Scanner input = new Scanner(System.in);
String name;
int i = 1;
System.out.println("How many names do you want to enter?");
int iteratorCount = input.nextInt();
iteratorCount++;
while (i < iteratorCount){
System.out.println("Ener name number "+i);
name = input.nextLine();
System.out.println(name);
i++;
}
其中,>
是用户输入的文本
有人能解释为什么会发生这种情况吗?不会使用'\n'
字符(插入int
后按的enter键),场景:
>>> How many names do you want to enter?
>>> 5 (and hit enter)
>>> Enter name number
>>> \n (consumed)
>>>
解决方案:
- 将另一个
放在nextLine
后面,以便使用该字符nextInt
- (不建议使用,但可能有助于您了解问题)请使用另一个
实例扫描仪
>>> How many names do you want to enter?
>>> 5 (and hit enter)
>>> Enter name number
>>> \n (consumed)
>>>