在 Java 中,比较枚举可以使用 '==' 运算符或 equals() 方法。

使用 '==' 运算符比较的是枚举对象的引用是否相同。如果两个枚举对象的引用相同,即它们引用的是同一个枚举常量,那么它们被认为是相等的。例如:

enum Color {
    RED, GREEN, BLUE;
}

public class Main {
    public static void main(String[] args) {
        Color color1 = Color.RED;
        Color color2 = Color.RED;
        
        System.out.println(color1 == color2);  // 输出 true
    }
}

使用 equals() 方法比较的是枚举对象的值是否相等。如果两个枚举对象的值相等,即它们引用的是同一个枚举常量,那么它们被认为是相等的。equals() 方法在枚举类中已经被重写,所以可以直接使用。例如:

enum Color {
    RED, GREEN, BLUE;
}

public class Main {
    public static void main(String[] args) {
        Color color1 = Color.RED;
        Color color2 = Color.RED;
        
        System.out.println(color1.equals(color2));  // 输出 true
    }
}

无论是使用 '==' 运算符还是 equals() 方法进行比较,只有当两个枚举对象引用的是同一个枚举常量时,它们才会被认为是相等的。

Java 枚举比较:== 运算符和 equals() 方法

原文地址: https://www.cveoy.top/t/topic/qlHb 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录