java枚举

Java中的枚举是一种特殊的数据类型,它允许我们定义一组有限的常量。枚举常量在程序中是唯一的,可以用于代表一些固定的值,例如星期几、月份、颜色等等。

Java中的枚举类型是通过关键字enum来定义的。下面是一个简单的枚举示例:

enum Weekday {
    MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY
}

我们也可以使用枚举字面量来访问特定的值。例如:

Day monday = Day.MONDAY;
Day tuesday = Day.TUESDAY;

每个枚举字面量都是枚举类型的实例,并且它们都是final类型的。这意味着一旦被赋值就不能再被改变。

枚举字面量之间可以使用equals()和hashCode()方法进行比较。例如:

if (monday.equals(tuesday)) {
    System.out.println("Monday is equal to Tuesday");
} else {
    System.out.println("Monday is not equal to Tuesday");
}

枚举类型还具有一些其他的功能,例如可以使用switch语句和增强型for循环。例如:

switch (day) {
    case MONDAY:
        System.out.println("It's Monday");
        break;
    case TUESDAY:
        System.out.println("It's Tuesday");
        break;
    // and so on for the other days...
    default:
        System.out.println("It's not a valid day");
        break;
}

或者使用增强型for循环:

for (Day day : Day.values()) {
    System.out.println(day);
}

枚举类型还可以包含方法和构造函数。下面是一个带有方法和构造函数的枚举示例:

enum Color {
    RED(255, 0, 0),
    GREEN(0, 255, 0),
    BLUE(0, 0, 255);

    private int r;
    private int g;
    private int b;

    private Color(int r, int g, int b) {
        this.r = r;
        this.g = g;
        this.b = b;
    }

    public int getR() {
        return r;
    }

    public int getG() {
        return g;
    }

    public int getB() {
        return b;
    }
}

我们可以使用枚举类型来访问枚举常量的属性和方法,例如:

Color red = Color.RED;
int r = red.getR(); // r = 255

你可能感兴趣的:(java,开发语言)