首页 > 编程语言 > 详细

Java记录 -81- EnumSet和EnumMap

时间:2015-11-18 02:05:35      阅读:328      评论:0      收藏:0      [点我收藏+]

EnumSet的名称说明了其作用,它是在J2SE5.0后加入的新类别,可以协助您建立枚举值的集合,它提供了一系列的静态方法,可以让您指定不同的集合建立方式。

EnumSet与枚举类型一起使用的专用 Set 实现。枚举 set 中所有键都必须来自单个枚举类型,该枚举类型在创建 set 时显式或隐式地指定。

EnumMap是个专为枚举类型设计的类别,方便您使用枚举类型及Map对象。

EnumMap与枚举类型键一起使用的专用 Map 实现。枚举映射中所有键都必须来自单个枚举类型,该枚举类型在创建映射时显式或隐式地指定。枚举映射在内部表示为数组。

enum FontConstant{
    Plain, Bold, Italilc, Hello
}
public class EnumSetDemo {

    public static  void showEnumSet(EnumSet<FontConstant> enumSet){
        for(Iterator<FontConstant> iter = enumSet.iterator();iter.hasNext();){
            System.out.println(iter.next());
        }
    }
    public static void main(String[] args){
        EnumSet<FontConstant> enumSet = EnumSet.of(FontConstant.Plain,FontConstant.Bold);
        showEnumSet(enumSet); //Plain        Bold
        System.out.println("---------------------");
        showEnumSet(EnumSet.complementOf(enumSet)); //Italilc        Hello
    }
}
enum Action{
    TURN_LEFT, TURN_RIGHT, SHOOT
}
public class EnumMapDemo {
    public static void main(String[] args){
        Map<Action, String> map = new EnumMap<Action, String>(Action.class);
        map.put(Action.TURN_LEFT, "向右转");
        map.put(Action.TURN_RIGHT, "向左转");
        map.put(Action.SHOOT, "射击");
        for(Action action : Action.values()){
            System.out.println(map.get(action));
        }
    }
}


Java记录 -81- EnumSet和EnumMap

原文:http://zlfwmm.blog.51cto.com/5892198/1713854

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!