我正在学习Java,希望有一天能够擅长Java。现在我正在玩If Statements。我在玩游戏时制作了以下代码:
import java.util.Scanner;
class programBegin {
public static void main(String args[]) {
int myNum;
Scanner sc = new Scanner(System.in); // Creates variable sc as type Scanner
System.out.println("Enter a number between 1 and 10: ");
myNum = sc.nextInt(); // Requests input and will store it as type int.
if (myNum > 5) {
System.out.println("Your number is greater than 5.");
}
if (myNum == 5) {
System.out.println("your number is equal to 5.");
} else {
System.out.println("Your number is less than 5.");
}
}
}
如果我输入6例如,我得到的输出是:
您的电话号码大于5。
您的电话号码小于5。
我认为除非之前的陈述是假的,否则不应该执行?
答案 0 :(得分:12)
您在else
之前错过了if (myNum == 5)
。
if (myNum > 5) {
System.out.println("Your number is greater than 5.");
} else if (myNum == 5) {
System.out.println("your number is equal to 5.");
} else {
System.out.println("Your number is less than 5.");
}
答案 1 :(得分:2)
如果
将其更改为elseif (myNum > 5) {
} else if (myNum == 5) {
} else {
}
答案 2 :(得分:1)
如果你在第二个if之前添加一个else,它将按预期工作。
答案 3 :(得分:1)
您的代码相当于"如果数字超过5,请打印此代码。如果数字是5,打印此。如果number不是5,请打印。"
您的else
声明与if (myNum == 5)
相对应,而不是if (myNum > 5)
。
你可能希望在这里使用if-else语句。
if (myNum > 5) {
System.out.println("Your number is greater than 5.");
} else if (myNum == 5) {
System.out.println("your number is equal to 5.");
} else {
System.out.println("Your number is less than 5.");
}
答案 4 :(得分:0)
在第一个if
..... 之后,它不存在块 ....它还检查第二个if ...并且它是一个假的。 .it进入其他...
以这种方式试试....
if (myNum > 5) {
System.out.println("Your number is greater than 5.");
}
if (myNum == 5) {
System.out.println("your number is equal to 5.");
}
else if(myNum < 5) {
System.out.println("Your number is less than 5.");
}
或强>
if (myNum > 5) {
System.out.println("Your number is greater than 5.");
}
else if (myNum == 5) {
System.out.println("your number is equal to 5.");
}
else (myNum < 5) {
System.out.println("Your number is less than 5.");
}
答案 5 :(得分:0)
你需要把你的第二个if变成else if语句,因为第二个if总是被检查并且它返回false因为6!= 5,这意味着你的其他人将被评估。
答案 6 :(得分:0)
您可以使用它来获得更高的性能。
如果mynum大于5,则会省略另外两个ifs:
if (myNum > 5) {
System.out.println("Your number is greater than 5.");
} else{
if (myNum == 5) {
System.out.println("your number is equal to 5.");
} else if(myNum < 5) {
System.out.println("Your number is less than 5.");
}
}
答案 7 :(得分:0)
这是两个不同的'if'语句,而不是一个。有很多方法可以解决这个问题...请参阅上面的许多不同方法:)有趣的是,知道不放一个单词可以有不同的输出,或者在这种情况下,输出不止一个。在这种情况下,'else if'将是修复小错误的好方法。祝你学习顺利。