当前位置:首页 > Java

java中如何枚举

2026-03-24 17:14:47Java

枚举的定义与基本语法

在Java中,枚举(Enum)是一种特殊的数据类型,用于定义一组固定的常量。枚举通过enum关键字声明,每个枚举常量都是枚举类型的实例。

public enum Day {
    MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY
}

枚举的常用方法

枚举类型自动继承java.lang.Enum类,提供以下常用方法:

  • values():返回枚举的所有值数组。
  • valueOf(String name):根据名称返回对应的枚举常量。
  • name()ordinal():分别获取枚举常量的名称和声明顺序(从0开始)。
Day[] days = Day.values(); // 获取所有枚举值  
Day day = Day.valueOf("MONDAY"); // 根据名称获取枚举  
String name = day.name(); // 输出 "MONDAY"  
int order = day.ordinal(); // 输出 0  

枚举的构造函数与方法

枚举可以包含构造函数、字段和方法,每个枚举常量可以调用这些方法。

public enum Planet {  
    MERCURY(3.303e+23, 2.4397e6),  
    VENUS(4.869e+24, 6.0518e6);  

    private final double mass;  
    private final double radius;  

    Planet(double mass, double radius) {  
        this.mass = mass;  
        this.radius = radius;  
    }  

    public double getMass() { return mass; }  
    public double getRadius() { return radius; }  
}  

枚举与switch语句

枚举常用于switch语句,提供类型安全的条件分支。

Day day = Day.MONDAY;  
switch (day) {  
    case MONDAY:  
        System.out.println("星期一");  
        break;  
    case TUESDAY:  
        System.out.println("星期二");  
        break;  
    // 其他分支...  
}  

枚举实现接口

枚举可以实现接口,为每个常量提供不同的行为。

public interface Operation {  
    double apply(double x, double y);  
}  

public enum BasicOperation implements Operation {  
    PLUS { public double apply(double x, double y) { return x + y; } },  
    MINUS { public double apply(double x, double y) { return x - y; } }  
}  

枚举集合与工具类

Java提供EnumSetEnumMap高效处理枚举集合:

java中如何枚举

  • EnumSet:基于位向量的高性能集合。
  • EnumMap:键为枚举类型的专用映射。
EnumSet<Day> weekend = EnumSet.of(Day.SATURDAY, Day.SUNDAY);  
EnumMap<Day, String> activities = new EnumMap<>(Day.class);  
activities.put(Day.MONDAY, "Work");  

通过以上方式,可以充分利用枚举的类型安全性和可读性,简化代码逻辑。

标签: java
分享给朋友:

相关文章

如何运行java文件

如何运行java文件

运行Java文件的方法 确保已安装Java Development Kit (JDK),可通过命令行输入java -version和javac -version验证安装。 编写Java代码并保存为.…

java如何输入数组

java如何输入数组

输入数组的方法 在Java中,可以通过多种方式输入数组,具体取决于输入源(如控制台、文件等)和数组类型(如基本类型或对象类型)。以下是几种常见的方法: 使用Scanner从控制台输入 对于基本数据类…

java如何运行程序

java如何运行程序

运行Java程序的步骤 安装Java开发工具包(JDK) 确保系统已安装JDK,可通过命令行输入java -version和javac -version验证。若未安装,需从Oracle官网下载并配置环…

如何安装java软件

如何安装java软件

下载Java安装包 访问Oracle官方网站或OpenJDK开源项目页面,选择适合操作系统的Java版本(如Windows、macOS或Linux)。对于个人使用,通常下载JDK(Java Devel…

java如何实现异步

java如何实现异步

Java实现异步的方法 Java中实现异步编程可以通过多种方式,每种方式适用于不同的场景和需求。以下是常见的实现方法: 使用Thread类 创建新线程执行异步任务是最基础的方式。通过继承Thread…

java下载功能vue实现

java下载功能vue实现

Java 后端文件下载功能实现 后端需提供文件下载的接口,通常使用 HttpServletResponse 实现。以下是一个简单的 Java Spring Boot 示例: @GetMapping(…