我正在学习Java,并且想知道是否可以在同一行中键入数字而无需花费额外的时间?
for (int i = 0; i < 5; i++) {
int a = sc.nextInt();
if (i == 4){
break;
}
}
如果我在输入的每个数字之后按Enter键,则我只能有5个数字,并且它们都在一列中,但是如果我想在一行中键入数字,那么我可以有5个以上的数字。那么有没有办法做到,在C ++中有什么与
\a
类似的东西吗? 最佳答案
使用扫描仪的nextLine()方法。
它将读取整行并返回一个字符串。
使用空格分割字符串并存储在字符串数组中。
遍历字符串数组。选择一个索引并借助Integer类parseInt方法对其进行解析。
以阵列形式存储或以您想要/需要的任何方式使用。
输入模式:-12 13 14 15 16 16 18
1行中可以有N个整数。
注意:-您应确保用户仅在输入中输入整数。否则,您需要在将字符串转换为整数之前编写if和else逻辑。这样您的代码就不会抛出异常。
String a = sc.nextLine();
String arr[] = a.split("\\s+"):
int input[] = new int[arr.length];
for( int i = 0 ; i < arr.length ; i++){
input[i] = Integer.parseInt(arr[i]);
}