我对Java编程极其新颖,并且我确信这是一个非常简单的修复。我有下面的代码,它的工作原理,但我想知道如何改变它,所以如果用户输入的东西不是一个int,它会循环回到顶部后,它会给出错误消息,所以它会要求再次温度。提前致谢。如何返回代码顶部?也许?
Scanner in = new Scanner(System.in);
//User input of temperature
System.out.print("Enter temperature in Celsius: ");
if (in.hasNextInt())
{
int temperature = in.nextInt();
//Now determine what state the water will be in, either ice, gas, or water.
if (temperature >=100)
{
System.out.print("Gas!");
}
else if ((temperature <100) && (temperature >0))
{
System.out.print("Water!");
}
else if (temperature <=0)
{
System.out.print("Ice!");
}
}
else
{
System.out.println("Error: Not an Integer");
System.out.print("Please enter temperature in Celsius: ");
}
不错的使用递归在这里 – kaveman 2012-02-25 23:50:29
你的方法肯定比我的更复杂。 +1。 – simchona 2012-02-25 23:53:42
@simchona,它们是等价的,但这种方式可能更具可读性;但是可以(并且实际上应该)将while循环放入新方法 – scibuff 2012-02-25 23:56:10