我只是想在我的书中做一个任务,但我不明白为什么这是错误的。它应该说负数不是正数,而正数不是布尔值。
这是我的代码:
import javax.swing.JOptionPane;
public class Zahlentest {
public static void main(String[] args) {
String eingabe;
char Zahl;
boolean istVokal;
eingabe = JOptionPane.showInputDialog("Geben Sie eine Zahl ein: ");
if (Zahl == "- && Zahl") {
istVokal = false;
} else {
istVokal = true;
}
if (istVokal == true) {
JOptionPane.showMessageDialog(null, "Die Zahl ist nicht negativ!");
} else {
JOptionPane.showMessageDialog(null, "Die Zahl ist negativ!");
}
}
}
我不知道我在做什么错...请帮忙。
这是错误代码:
Zahlentest.java:10: error: bad operand types for binary operator '=='
if (Zahl == "- && Zahl") {
^
first type: char
second type: String
1 error
最佳答案
Zahl是您要与字符串比较的字符。在Java中,这是不允许的,尽管确实允许使用其他语言。
if(Zahl == '-')
也许您正在寻找什么,但我仍然对此表示怀疑,因为Zahl在该阶段尚未初始化。我认为您真正想要的是
if (eingabe.equals("- && Zahl"))
请注意,我们不要以大写字母开头字段名或变量名。我们通常使用camelCase