error: bad operand types for binary operator '=='
error: bad operand types for binary operator '=='
只是想在我的书中完成一项任务,但我不明白为什么这是 wrong.It 应该说负数不是正数,正数不是布尔值的负数。
这是我的代码:
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
你将char与String进行比较,这就是错误的原因。二元运算符'=='的操作数必须是同一类型。
Zahl 是您要与字符串进行比较的字符。在 java 中这是不允许的,尽管在其他语言中确实是允许的。
if(Zahl == '-')
也许是您要找的东西,但我仍然怀疑,因为 Zahl 在那个阶段还没有初始化。我想你真正要找的是
if (eingabe.equals("- && Zahl"))
作为脚注,我要指出,我们不会以大写字符开头字段名称或变量名称。我们通常为此使用 camelCase
您不能使用运算符 ==
将字符串 - && Zahl
与变量 Zahl
中的字符进行比较,因为在 java 中,char 是原始类型,而字符串是一个对象。
顺便说一句:你没有给 Zahl
赋值,我不明白你的意图是将它与字符串进行比较。
只是想在我的书中完成一项任务,但我不明白为什么这是 wrong.It 应该说负数不是正数,正数不是布尔值的负数。 这是我的代码:
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
你将char与String进行比较,这就是错误的原因。二元运算符'=='的操作数必须是同一类型。
Zahl 是您要与字符串进行比较的字符。在 java 中这是不允许的,尽管在其他语言中确实是允许的。
if(Zahl == '-')
也许是您要找的东西,但我仍然怀疑,因为 Zahl 在那个阶段还没有初始化。我想你真正要找的是
if (eingabe.equals("- && Zahl"))
作为脚注,我要指出,我们不会以大写字符开头字段名称或变量名称。我们通常为此使用 camelCase
您不能使用运算符 ==
将字符串 - && Zahl
与变量 Zahl
中的字符进行比较,因为在 java 中,char 是原始类型,而字符串是一个对象。
顺便说一句:你没有给 Zahl
赋值,我不明白你的意图是将它与字符串进行比较。