我正在尝试使用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(" ");
girlQualities=new HashMap<>();
for (int x=0;x<numbers.length;x++)
{
int z=Integer.parseInt(numbers[x]);
girlQualities.put(j,z);
j++;
}
}
当我使用nextLine()
显示NumberFormatException时,即使现在它也无效。请帮我
我的目标是以这种方式添加数字
3
1 2 5 6
1 2 3 4 5
1 2 3 4
答案 0 :(得分:1)
这是因为Scanner#nextInt
方法不消耗输入的最后一个换行符,因此在下次调用Scanner#nextLine
尝试
int G = s.nextInt();
s= new Scanner(System.in);
然后尝试nextLine()
方法
参考Link