Java 不能使用for循环添加空格分隔的输入
我试图使用for循环向hashmap添加空格分隔的输入,但遇到了一些问题Java 不能使用for循环添加空格分隔的输入,java,for-loop,nested,Java,For Loop,Nested,我试图使用for循环向hashmap添加空格分隔的输入,但遇到了一些问题 int G = s.nextInt(); for (int i = 0; i < G; i++) { System.out.println("List girls qualities"); int j=1; String gir=s.next(); String[] numbers = gir.split(" ");
int G = s.nextInt();
for (int i = 0; i < G; i++) {
System.out.println("List girls qualities");
int j=1;
String gir=s.next();
String[] numbers = gir.split(" ");
girlQualities=new HashMap<>();
for (int x=0;x<numbers.length;x++)
{
int z=Integer.parseInt(numbers[x]);
girlQualities.put(j,z);
j++;
}
}
这是因为
Scanner#nextLine
方法不会使用输入的最后一个换行符,因此在下次调用Scanner#nextLine
试一试
然后尝试nextLine()
方法
请参阅Java有一个
扫描仪
,它非常复杂,可以解析各种输入。@WillemVanOnsem提供的代码操作是否意味着他们正在使用一个名为s
的扫描仪?你不明白@gifpikindly,你能解释一下为什么会发生这种情况吗。nextLine应返回当前行。我对上述情景有点困惑。点击答案末尾的参考链接,了解详细的补偿。。
3
1 2 5 6
1 2 3 4 5
1 2 3 4
int G = s.nextInt();
s= new Scanner(System.in);