枚举 EnumSet类和EnumMap类

EnumSet类

EnumSet底层实现是枚举数组,效率高

  • 枚举是天然线程安全的
public class EnumSetDemo01 {
	public static void main(String[] args) {
//		EnumSet<Weekend> es = EnumSet.noneOf(Weekend.class);
      // EnumSet<Enum<>>枚举的泛型就是枚举  EnumSet的底层是EnumSet<E extends Enum<E>> 也就是说EnumSet<这里放的是该类或者是该类的子类>
		EnumSet<Weekend> es = EnumSet.allOf(Weekend.class);//allof补齐Weekend 并排序输出
		System.out.println(es);
		
		/*es.add(Weekend.WEDNESDAY);
		es.add(Weekend.FRIDAY);
		es.add(Weekend.THURSDAY);
		es.add(Weekend.SUNDAY);*/
		
//		System.out.println(es);
	}
}

enum Weekend {
	MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATUARDAY, SUNDAY
}

EnumMap类

public class EnumMapDemo01 {
	public static void main(String[] args) {
		//EnumMap<这里放的是该类或者是该类的子类, V>
        EnumMap<Weekend, String> em = new EnumMap<>(Weekend.class);//
		em.put(Weekend.MONDAY, "星期一");
		em.put(Weekend.THURSDAY, "星期四");
		em.put(Weekend.FRIDAY, "星期五");
		em.put(Weekend.SUNDAY, "星期天");
		em.put(Weekend.WEDNESDAY, "星期三");
		
		System.out.println(em);
		
		for(Weekend w : em.keySet()) {
			String value = em.get(w);
			System.out.println(w.name() + "=" + value);
		}
	}
}
enum Weekend {
	MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATUARDAY, SUNDAY
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值