当前位置:首页 > Java

java枚举如何使用

2026-02-05 12:31:59Java

Java枚举的基本用法

枚举(Enum)是Java 5引入的一种特殊数据类型,用于定义一组固定的常量。枚举类型通过enum关键字声明,每个枚举常量默认是public static final的实例。

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

枚举的属性和方法

枚举可以像普通类一样包含属性和方法,每个枚举常量可以有自己的实现。

java枚举如何使用

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

    private final String symbol;
    Operation(String symbol) { this.symbol = symbol; }
    public abstract double apply(double x, double y);
}

枚举的常用方法

Java为所有枚举类型自动提供了以下常用方法:

  • values(): 返回枚举的所有值数组
  • valueOf(String name): 根据名称返回对应的枚举常量
  • name(): 返回枚举常量的名称
  • ordinal(): 返回枚举常量的序数(位置)
Day[] days = Day.values();
Day monday = Day.valueOf("MONDAY");
String name = monday.name();
int ordinal = monday.ordinal();

枚举实现接口

枚举可以实现接口,为所有枚举常量提供统一的行为。

java枚举如何使用

public interface Command {
    void execute();
}

public enum LogLevel implements Command {
    ERROR {
        public void execute() { System.err.println("Error logging"); }
    },
    WARNING {
        public void execute() { System.out.println("Warning logging"); }
    };
}

枚举集合的使用

Java集合框架提供了专门处理枚举的类,如EnumSetEnumMap

EnumSet<Day> weekend = EnumSet.of(Day.SATURDAY, Day.SUNDAY);
EnumMap<Day, String> activities = new EnumMap<>(Day.class);
activities.put(Day.MONDAY, "Work");

枚举的单例模式

由于枚举实例天生是单例的,因此枚举是实现单例模式的最佳方式。

public enum Singleton {
    INSTANCE;

    public void doSomething() {
        // singleton behavior
    }
}

分享给朋友:

相关文章

java如何打开

java如何打开

安装Java开发环境 下载并安装Java Development Kit (JDK),推荐从Oracle官网或OpenJDK获取最新版本。安装完成后配置环境变量,确保JAVA_HOME和PATH变量正…

如何打开java

如何打开java

打开 Java 程序的方法 通过命令行运行 Java 程序 确保已安装 Java Development Kit (JDK) 并配置环境变量。使用 javac 编译 .java 文件,生成 .clas…

react如何使用路由

react如何使用路由

使用 React Router 的基本方法 React Router 是 React 应用中实现路由功能的核心库。以下是基本使用方法: 安装 React Router 依赖包: npm insta…

如何运行java文件

如何运行java文件

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

java如何上传文件

java如何上传文件

使用HttpURLConnection上传文件 在Java中,可以通过HttpURLConnection实现文件上传功能。需要设置请求头为multipart/form-data,并构建包含文件数据的请…

java如何创建项目

java如何创建项目

使用IDE创建Java项目(以IntelliJ IDEA为例) 打开IntelliJ IDEA,选择“New Project”。 在左侧菜单中选择“Java”,确保已配置JDK(若无需手动添加)。 勾…