Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java布尔错误答案_Java_Boolean - Fatal编程技术网

Java布尔错误答案

Java布尔错误答案,java,boolean,Java,Boolean,你好,我有点“问题”。。。 我只是觉得奇怪,当你检查下面的代码时,如果我在对话框字段中输入两次相同的数字,它会显示false 我对Java有点陌生,但不熟悉编程本身,它没有任何意义 提前谢谢 import javax.swing.*; public class Praeinkrement { public static void main(String[] args) { String a = JOptionPane.showInputDialog("Za

你好,我有点“问题”。。。 我只是觉得奇怪,当你检查下面的代码时,如果我在对话框字段中输入两次相同的数字,它会显示false

我对Java有点陌生,但不熟悉编程本身,它没有任何意义

提前谢谢

    import javax.swing.*;


public class Praeinkrement {

    public static void main(String[] args) {

        String a = JOptionPane.showInputDialog("Zahl a");
        String b = JOptionPane.showInputDialog("Zahl b");


        Double c = Double.parseDouble(a);
        Double d = Double.parseDouble(b);

        boolean e, f;
        e = (c == d);
        f = (c < d);

        JOptionPane.showMessageDialog(null, e + "\n" + f);

    }
}
import javax.swing.*;
公开课恶作剧{
公共静态void main(字符串[]args){
字符串a=JOptionPane.showInputDialog(“Zahl a”);
字符串b=JOptionPane.showInputDialog(“Zahl b”);
Double c=Double.parseDouble(a);
Double d=Double.parseDouble(b);
布尔e,f;
e=(c==d);
f=(c
使用.equals进行值检查

public static void main(String[] args) {

          String a = JOptionPane.showInputDialog("Zahl a");
            String b = JOptionPane.showInputDialog("Zahl b");

            boolean c = (a.equals(b));

            JOptionPane.showMessageDialog(null, c);
    }

您正在比较字符串而不是数字..这是有意义的。阅读链接副本,它解释了效果。简而言之:
==
比较的是身份,而不是内容。如果要比较内容,请使用
equals
方法。现在检查此项。Thxchange
e=(c==d)
e=(c等于(d))@FelixPutzenlechner同样适用于这里。您需要使用
.equals()
来比较包装类的相等性。无需回答已标记为重复的问题!首字母本身回答。好的,谢谢。