Java:如何在不转到下一行的情况下检查下一个整数(扫描仪)
Java: How to check for next ints without going to the next line (Scanner)
快速 Java 问题:所以我在两条不同的线上有一组整数,但是,我想在不同的场景中考虑它们。
所以我有一个 for 循环,我想继续遍历一个整数列表并将它们添加到一个 ArrayList 中,但我希望它在转到下一行之前停止。
就像我希望它在这种情况下停在 2:
1 4 2 91 4 0 2
3 5 8 6 9 88
hasNextInt() 停在 88 而不是我希望的 2(这是有道理的)。
所以我的问题是:有没有办法让它在转到下一行之前停止?我尝试了 nextInt() 和 next() ,它们都继续到下一行。
我的代码:
while (scan.hasNextInt())
{
if (stop == 'A')
passengers.put(stop, scan.nextInt() + subtract);
else
passengers.put(stop, passengers.get((char)(stop - 1)) + scan.nextInt() + subtract);
System.out.println(passengers);
if (scan.hasNext())
subtract = scan.nextInt();
else
break;
stop++;
}
- 在
while
循环中使用 hasNextLine()
- 使用
nextLine()
阅读 行
- 然后根据 "space[s]"
拆分值
- 将每个值解析为整数
- 添加它们。
和实现天哪,这比使用nextInt()
快
快速 Java 问题:所以我在两条不同的线上有一组整数,但是,我想在不同的场景中考虑它们。
所以我有一个 for 循环,我想继续遍历一个整数列表并将它们添加到一个 ArrayList 中,但我希望它在转到下一行之前停止。
就像我希望它在这种情况下停在 2:
1 4 2 91 4 0 2
3 5 8 6 9 88
hasNextInt() 停在 88 而不是我希望的 2(这是有道理的)。
所以我的问题是:有没有办法让它在转到下一行之前停止?我尝试了 nextInt() 和 next() ,它们都继续到下一行。
我的代码:
while (scan.hasNextInt())
{
if (stop == 'A')
passengers.put(stop, scan.nextInt() + subtract);
else
passengers.put(stop, passengers.get((char)(stop - 1)) + scan.nextInt() + subtract);
System.out.println(passengers);
if (scan.hasNext())
subtract = scan.nextInt();
else
break;
stop++;
}
- 在
while
循环中使用hasNextLine()
- 使用
nextLine()
阅读 行
- 然后根据 "space[s]" 拆分值
- 将每个值解析为整数
- 添加它们。
和实现天哪,这比使用nextInt()