使用if语句可以取消其他代码。(爪哇)
我对Java编程相当陌生。我想做一个乐透节目。以下是代码: 打包。nutella
import java.util.Scanner;
public class Lotto {
@SuppressWarnings("resource")
public static void main(String[] args) {
try {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter A Number Between 1-20!");
int choice = scanner.nextInt();
if (choice > 20)
System.out.print("Please Only Pick Numbers Between 1-20!");
int b = (int) (Math.random() * 20) +1;
if (choice == b)
System.out.print("You Win!");
else
System.out.print("You Lost! The correct answer was " + b);
}
catch(Exception E) {
System.out.print("Your Answer Must Be Numeric!");
}
}
}
现在,这部分如果我主要关心的是:
如果(选项>;20) 系统出来打印(“请只选择1-20之间的数字!”)
我想让它这样,如果有人把数字超过20,它将打印该消息。现在这部分确实有效,但当我把数字放在20以上时,它仍在玩乐透游戏。我想这样做,如果他们把他们的数字高于20,它将不会玩游戏,并输入该消息。 如何做到这一点
# 1 楼答案
可以使用}派上用场的地方。您可以在循环的开头显示消息,然后读入用户输入。如果在可接受的范围内,
do {...} while();
loop
最优雅地完成。在开始时,用户必须始终输入一个数字,因此loop
必须至少执行一次。这就是do {...} while();
{loop
永远不会重新执行,代码将继续。但是,如果不可接受,我们将重新执行loop
,直到得到一个可接受的值下面是我将如何处理这个问题:
还值得注意的是,您的消息声明“数字在1-20之间”,但您的代码只检查
choice < 20
,因此如果用户输入小于20的任何内容,都将被接受。这包括0、负数,当然还有有效的数字范围。我在示例中添加了|| choice < 1
检查