我需要以下列形式接受输入: 鉴于' n'框的数量和每个框可以包含任意数量的不同整数, 所以第一个用户输入n,然后对于i的每个值从1到n,我需要输入值直到输入被按下。 我不知道该怎么做, 例如 -
5
1 2 3 4 5 6 7 8 9
1 2
1
4 5 6
3 4 5 6 7
我试过这个 -
String str;
for(int i=0;i<n;i++)
{
while(true)
{
str=scanner.next();
if(str.isEmpty())
break;
int val=Integer.parseInt(str);
}
}
还尝试了str.equals(&#34; \ n&#34;)和str.equals(&#34;&#34;), 但没有任何工作。 有人请帮帮我。谢谢。
答案 0 :(得分:1)
试试这个
String str;
for(int i=0;i<n;i++)
{
while(true)
{
str=scanner.next();
if(!str.equalsIgnoreCase(""))
break;
int val=Integer.parseInt(str);
}
}
答案 1 :(得分:0)
尝试这样的事情:
int n = scanner.nextInt();
for(int i=0;i<n;i++)
{
String str = scanner.nextLine();
String[] array = str.split(" ");
}
您从用户获取一个字符串(一行数字)并按空格分割,因此您在数组中将所有数字都作为字符串。然后你必须将它们解析为int或用它们做任何你想做的事。
答案 2 :(得分:0)
在Scanner类中有 next(){仅输入任何空格字符出现} nextLine(){将输入带到新行字符}
尝试使用nextLine()方法,然后尝试存储在任何数组中 使用n值。然后你可以使用split或string tokenzer函数,然后我们从中提取整数
答案 3 :(得分:0)
这对我有用
while (true) {
String str = sc.nextLine();
if (str.equalsIgnoreCase("")) break;
}