Java EnumSet的创建方式有哪些

发布时间:2025-03-22 03:54:55 作者:小樊
来源:亿速云 阅读:102

在Java中,EnumSet是一种特殊的Set实现,它用于存储枚举类型的元素。EnumSet提供了高效的性能和丰富的操作方法。以下是创建EnumSet的几种常见方式:

1. 使用EnumSet.noneOf(Class<E> elementType)方法

这个方法会创建一个指定枚举类型的空EnumSet。

import java.util.EnumSet;

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

public class EnumSetExample {
    public static void main(String[] args) {
        EnumSet<Day> weekend = EnumSet.noneOf(Day.class);
        weekend.add(Day.SATURDAY);
        weekend.add(Day.SUNDAY);
        System.out.println(weekend); // 输出: [SATURDAY, SUNDAY]
    }
}

2. 使用EnumSet.allOf(Class<E> elementType)方法

这个方法会创建一个包含指定枚举类型所有元素的EnumSet。

import java.util.EnumSet;

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

public class EnumSetExample {
    public static void main(String[] args) {
        EnumSet<Day> allDays = EnumSet.allOf(Day.class);
        System.out.println(allDays); // 输出: [MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY]
    }
}

3. 使用EnumSet.of(E e1, E e2, ..., E en)方法

这个方法会创建一个包含指定枚举类型元素的EnumSet。

import java.util.EnumSet;

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

public class EnumSetExample {
    public static void main(String[] args) {
        EnumSet<Day> weekend = EnumSet.of(Day.SATURDAY, Day.SUNDAY);
        System.out.println(weekend); // 输出: [SATURDAY, SUNDAY]
    }
}

4. 使用EnumSet.range(E fromElement, E toElement)方法

这个方法会创建一个包含从fromElementtoElement(包括两者)的枚举类型元素的EnumSet。

import java.util.EnumSet;

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

public class EnumSetExample {
    public static void main(String[] args) {
        EnumSet<Day> weekdays = EnumSet.range(Day.MONDAY, Day.FRIDAY);
        System.out.println(weekdays); // 输出: [MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY]
    }
}

5. 使用EnumSet.copyOf(Collection<? extends E> c)方法

这个方法会创建一个包含指定集合元素的EnumSet。

import java.util.Arrays;
import java.util.EnumSet;
import java.util.Set;

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

public class EnumSetExample {
    public static void main(String[] args) {
        Set<Day> weekendDays = Arrays.asList(Day.SATURDAY, Day.SUNDAY);
        EnumSet<Day> weekend = EnumSet.copyOf(weekendDays);
        System.out.println(weekend); // 输出: [SATURDAY, SUNDAY]
    }
}

这些是创建EnumSet的主要方式。根据具体需求,可以选择合适的方法来创建EnumSet实例。

推荐阅读:
  1. Java位域的示例分析
  2. java中EnumSet抽象类的示例分析

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

java

上一篇:EnumSet在Java 8中的新特性

下一篇:SSL证书如何启用HSTS

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》