如何在Java中使用相等运算符?

相等运算符用于比较两个相似的事物(数字,字符,boolean,原始类型和对象引用)。相等运算符将始终产生boolean值(true或false)。

对于对象引用,如果两个引用变量都引用同一个对象,则返回true。

package org.nhooo.example.fundamental;

public class EqualityDemo {
    public static void main(String[] args) {
        int value1 = 10, value2 = 10, number1 = 10;
        char a = 'a', b = 'b';
        double number2 = 10d;
        Cat kitty = new Cat("Kitty");
        Cat kitten = new Cat("Kitty");
        Cat sweetie = kitty;

        if (value1 == value2) {
            System.out.println("Equal");
        }

        if (a != b) {
            System.out.println("Not Equal");
        }

        // 尽管它具有不同的类型,但是具有相同的值
        if (number1 == number2) {
            System.out.println("Equal");
        }

        // 它不是指同一个对象,所以它将返回
        // 假
        if (kitty == kitten) {
            System.out.format("(kitty == kitten) = " + (kitty == kitten));
        } else {
            System.out.println("(kitty == kitten) = " + (kitty == kitten));
        }

        // 它引用了相同的对象,因此它将返回true
        if (kitty == sweetie) {
            System.out.println("(kitty == sweetie) = " + (kitty == sweetie));
        }

        if (true != false) {
            System.out.println("true != false");
        }

    }
}

class Cat {
    private String name;

    Cat(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

这是程序的结果:

Equal
Not Equal
Equal
(kitty == kitten) = false
(kitty == sweetie) = true
true != false