Java 在用户用扫描器输入空白行后,程序停止
在我让用户输入扫描仪后制作的程序中,我创建了一个新的数组类型“讲师[]”,然后为用户的整数输入提供了一些if选项。 基本上是:Java 在用户用扫描器输入空白行后,程序停止,java,arrays,line,Java,Arrays,Line,在我让用户输入扫描仪后制作的程序中,我创建了一个新的数组类型“讲师[]”,然后为用户的整数输入提供了一些if选项。 基本上是: System...println("Hello, here are your options:..); Scanner user = new Scanner(System.in); boolean valid = false; while(valid==false) { .... make sure it becomes valid... } Instructor
System...println("Hello, here are your options:..);
Scanner user = new Scanner(System.in);
boolean valid = false;
while(valid==false)
{
.... make sure it becomes valid...
}
Instructor[] list = new Instructor[2];
if(user.nextInt()==1)
{
do this
}
else if(==2)
{
do this
}
... if( ==n)
...
else
{
System...println("wow");
}
因此,我想要的3个选项出现了,如果我在while循环之外输入一个值,它会工作并让我返回,但是当我输入一个有效的int时,程序会以一个空行停止,我相信这是因为我装箱了新的讲师[]数组。问题是我需要在3个选项之外,因为我需要对每个选项使用相同的选项。
我尝试过不使用while循环,但它仍然是空的,没有讲师[]它可以工作,但是我如何组织它,以便在if语句之外创建一个新讲师[]时它继续运行?如果您只想在每个循环中提示用户一次,您可能需要将
user.nextInt()
设置为一个变量。看起来就像你现在做的那样,程序正在为每个if语句请求新的用户输入。因此,请尝试以下方法:
if (input==1){
do this
}
else if (input==2){
do this
}
else if (input==3){
do this
}
这就是你的意思吗?你能把全部代码都贴出来吗?请把你真正的代码贴出来。我想我知道你的问题是什么,但我不能确定,因为这只是伪代码。是的,谢谢!首先将扫描器转换为整数解决了这个问题!