我正在编写一个程序,该程序存储用户输入的数字,但是如果输入空格则退出。
我尝试将其设置为char数组并检查其长度。如果长度大于0,则表示存在并输入,因此它将存储输入。如果长度为0,则表示没有输入,因此退出循环。
do
{
System.out.print("Enter an integer ('blank' to exit): ");
String sInput=reader.next();
char[] cArrInput=sInput.toCharArray();
int iInput=cArrInput[0];
if (cArrInput.length>0)
{
numbers[count]=iInput;
count=count+1;
}
else if (sInput.length()==0)
{
break;
}
}while(count<100);
我希望在没有用户输入的情况下它会中断,但空白行只是可视的,并且代码仍会存储下一个输入的数字。
答案 0 :(得分:0)
我建议改用@form(routes.LoginController.loginAuthenticate, 'onSubmit' => 'validate()') {
,然后按nextLine
。
这是简化版
<enter>
答案 1 :(得分:0)
问题::您正在使用Scanner类的 next()方法,该方法等待用户下一次输入。
解决方案:
使用 nextLine()方法。
使用以下内容:
Scanner reader = new Scanner(System.in);
int numbers[] = new int[100];
int count=0;
do
{
System.out.print("Enter an integer ('blank' to exit): ");
String sInput=reader.nextLine();
char[] cArrInput=sInput.toCharArray();
if (cArrInput.length>0)
{
numbers[count]=cArrInput[0];
count=count+1;
}
else if (sInput.length()==0)
{
break;
}
}while(count<100);