【发布时间】:2021-05-29 23:27:06
【问题描述】:
我编写了一个程序来按字典顺序排列 3 个名称。我收到两个 else if 子句的语法错误。如果没有 else-if 语句,我无法弄清楚我应该怎么做。这里有什么问题?
Scanner splitter = new Scanner(names);
String name1 = splitter.next();
String name2 = splitter.next();
String name3 = splitter.next();
if (name1.compareToIgnoreCase(name2) < 0 && name1.compareToIgnoreCase(name3) < 0); {
namesOrdered = namesOrdered + name1 + " ";
if (name2.compareToIgnoreCase(name3) < 0) {
namesOrdered = namesOrdered + name2 + " ";
namesOrdered = namesOrdered + name3 + " ";
}
else {
namesOrdered = namesOrdered + name3 + " ";
namesOrdered = namesOrdered + name2 + " ";
}
}
else if (name2.compareToIgnoreCase(name1) < 0 && name2.compareToIgnoreCase(name3) < 0); {
namesOrdered = namesOrdered + name2 + " ";
if (name1.compareToIgnoreCase(name3) < 0) {
namesOrdered = namesOrdered + name1 + " ";
namesOrdered = namesOrdered + name3 + " ";
}
else {
namesOrdered = namesOrdered + name3 + " ";
namesOrdered = namesOrdered + name1 + " ";
}
}
else if (name3.compareToIgnoreCase(name2) < 0 && name3.compareToIgnoreCase(name1) < 0); {
namesOrdered = namesOrdered + name3 + " ";
if (name2.compareToIgnoreCase(name1) < 0) {
namesOrdered = namesOrdered + name2 + " ";
namesOrdered = namesOrdered + name1 + " ";
}
else {
namesOrdered = namesOrdered + name1 + " ";
namesOrdered = namesOrdered + name2 + " ";
}
}
System.out.println(namesOrdered);
【问题讨论】:
-
删除
else if语句的右括号后的; -
在if条件之后。
标签: java if-statement syntax