java枚举

本文介绍了Java中的枚举类型,包括基本语法、枚举常量的方法(如属性和getName()),以及枚举的高级用法,如常量相关方法(如Operation枚举中的apply())。通过实例展示了如何利用枚举更安全地表示常量并执行关联操作。
摘要由CSDN通过智能技术生成

Java中的枚举(Enum)是一种特殊的数据类型,用于定义一个固定的、有限的值集合。枚举可以更加安全和简洁地表示某些特定的常量值,避免使用数字或字符串表示常量时出现潜在的错误。

  1. 基本语法: 定义一个枚举类型使用关键字enum,并且枚举值必须写在枚举类型的最前面:

enum Season {
    SPRING, SUMMER, AUTUMN, WINTER
}

上述示例定义了一个包含四个枚举值的Season枚举类型,分别为SPRING、SUMMER、AUTUMN和WINTER。

  1. 枚举常量方法: 枚举中的每个枚举值都是一个枚举常量,这些常量可以拥有自己的属性和方法。下面是一个Java代码的示例:

enum Season {
    SPRING("春天"), SUMMER("夏天"), AUTUMN("秋天"), WINTER("冬天");
​
    private String name;
​
    private Season(String name) {
        this.name = name;
    }
​
    public String getName() {
        return name;
    }
}
​
public class EnumExample {
    public static void main(String[] args) {
        for (Season s : Season.values()) {
            System.out.println(s + ": " + s.getName());
        }
    }
}

在上述示例中,我们在Season枚举中添加了一个name属性和一个getName()方法,用于获取枚举常量的名称。在Main方法中,我们使用了values()方法获取Season枚举中所有的枚举常量,并循环输出每个常量及其名称。

  1. 枚举的高级用法: 枚举还支持常量相关方法,可以让枚举常量之间具有一定的关联性。下面是一个Java代码的示例:

enum Operation {
    PLUS("+") {
        public double apply(double x, double y) {
            return x + y;
        }
    },
    MINUS("-") {
        public double apply(double x, double y) {
            return x - y;
        }
    },
    TIMES("*") {
        public double apply(double x, double y) {
            return x * y;
        }
    },
    DIVIDE("/") {
        public double apply(double x, double y) {
            return x / y;
        }
    };
​
    private String symbol;
​
    private Operation(String symbol) {
        this.symbol = symbol;
    }
​
    public String getSymbol() {
        return symbol;
    }
​
    public abstract double apply(double x, double y);
}
​
public class EnumExample {
    public static void main(String[] args) {
        double x = 2.0;
        double y = 4.0;
​
        for (Operation op : Operation.values()) {
            System.out.printf("%f %s %f = %f%n", x, op.getSymbol(), y, op.apply(x, y));
        }
    }
}

在上述示例中,我们定义了一个Operation枚举类型,包含四个枚举常量(PLUS、MINUS、TIMES和DIVIDE)。每个枚举常量都有自己的symbol属性和apply()方法,用于表示一种数学运算符号和对应的实现方法。在Main方法中,我们使用values()方法获取Operation枚举中所有的枚举常量,并循环输出每个常量及其对应的数学运算结果。

通过枚举的高级用法,我们可以更加灵活、简洁地处理常量值相关的业务需求。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猿人啊兴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值