在java中,我需要使用3个case语句。它会询问用户输入,如果输入小于或等于0的数字,它会告诉他们一些东西。如果他们输入10或更高,它会说其他的东西。如果他们在1到9之间输入,它会说出一些内容,并为每个大于1的数字添加一个单词,直到他们输入的数字。到目前为止,我已经弄清楚如何通过使用“if”语句来完成大部分操作,但需要使用“switch”来完成。另外,我还没有真正考虑在句子的末尾添加额外的单词,如果它在1-9之间,那么如果你能指出我正确的方向那将是很酷的。
到目前为止,这是我的代码的一部分:
public static void main(String[] args) {
String Str = "Add more to number";
String Str2 = "Too much number";
String Str3 = "Just right";
int num1 = 0;
Scanner scanIn = new Scanner(System.in);
System.out.println("How much number");
num1 = scanIn.nextInt();
if (num1 <= 0) System.out.println(Str);
else if (num1 > 10) System.out.println(Str2);
else if (num1 < 10 || num1 > 1) System.out.println(Str3);
答案 0 :(得分:1)
使用if语句是正确的。就像每个人都说过的情况/开关不适合这种情况。此外,它看起来你正在做一个数字猜谜游戏,所以你会想要反复询问输入,直到用户猜对,你会希望他们猜出一个特定的数字。在我的例子中,我使用7作为我的数字来猜测。
public static void main(String[] args) {
String Str = "Add more to number";
String Str2 = "Too much number";
String Str3 = "Just right";
int num1 = 0;
int numToGuess = 7; //you can change this to whatever you want
Scanner scanIn = new Scanner(System.in);
//we want to ask for a number until it is the same as our numToGuess
do {
System.out.println("How much number");
num1 = scanIn.nextInt();
//if the number entered is less let them know
if(num1 < numToGuess)
{
System.out.println(Str);
}
else if(num1 > numToGuess)
{
System.out.println(Str2);
}
} while (num1 != numToGuess);
//we will continue to ask until our num1 is equal to numToGuess
//since we got out we guessed correctly
System.out.println(Str3);
}//main method