我需要在Java中修复此代码块,我正在使用eclipse
(total == MAX)
if (total < sum)
System.out.println("total == MAX and < sum.");
else
System.out.println("total is not equal to MAX");
所以我进行了调整并得到了
package lecture1_1;
public class Total {
public static void main(String[] args) {
int MAX = 100;
int total = 50;
int sum = 150;
if (total == MAX)
if (total < sum)
System.out.println("total is equal to MAX and less than sum.");
else
System.out.println("total is not equal to MAX");
}
}
,但不打印结果。我想念什么?
答案 0 :(得分:2)
TL; DR使用方括号来建立代码块边界-这将使代码更具可读性。
您期望的是:
public static void main(String[] args) {
int MAX = 100;
int total = 50;
int sum = 150;
if (total == MAX) {
if (total < sum) {
System.out.println("total is equal to MAX and less than sum.");
}
}
else {
System.out.println("total is not equal to MAX");
}
}
但是你有什么呢?
public static void main(String[] args) {
int MAX = 100;
int total = 50;
int sum = 150;
if (total == MAX) {
if (total < sum) {
System.out.println("total is equal to MAX and less than sum.");
}
else {
System.out.println("total is not equal to MAX");
}
}
}
答案 1 :(得分:0)
由于第一个{ }
缺少if
,导致else
成为第二个if
的一部分,因此您没有获得期望的结果。如下纠正后
public class Main {
public static void main(String[] args) {
int MAX = 100;
int total = 50;
int sum = 150;
if (total == MAX) {
if (total < sum)
System.out.println("total is equal to MAX and less than sum.");
} else
System.out.println("total is not equal to MAX");
}
}
你得到
total is not equal to MAX
始终建议即使对于单个语句也使用{ }
,如下所示:
public class Main {
public static void main(String[] args) {
int MAX = 100;
int total = 50;
int sum = 150;
if (total == MAX) {
if (total < sum) {
System.out.println("total is equal to MAX and less than sum.");
}
} else {
System.out.println("total is not equal to MAX");
}
}
}