importjava.util.EnumMap;importjava.util.EnumSet;public enumWeek {

MON {publicString toLocaleString() {return "星期一";

}

},

TUES {publicString toLocaleString() {return "星期二";

}

},

WEB {publicString toLocaleString() {return "星期三";

}

},

THUR {publicString toLocaleString() {return "星期四";

}

},

FRI {publicString toLocaleString() {return "星期五";

}

},

SAT {publicString toLocaleString() {return "星期六";

}

},

SUN {publicString toLocaleString() {return "星期日";

}

};public abstractString toLocaleString();public static voidmain(String[] args) {for(Week w : Week.values()) {

System.out.println(w.toLocaleString());

}

testEnumSet();

testEnumMap();

testTraversalEnum();

}/** 演示EnumSet如何使用,EnumSet是一个抽象类,获取一个类型的枚举类型内容

*

* 可以使用allOf方法

*

* values()方法是编译器插入到enum定义中的static方法,所以,

* 当你将enum实例向上转型为父类Enum是,values()就不可访问了。

* 解决办法:在Class中有一个getEnumConstants()方法,

* 所以即便Enum接口中没有values()方法,我们仍然可以通过Class对象取得所有的enum实例*/

private static voidtestEnumSet() {

EnumSet currEnumSet = EnumSet.allOf(Week.class);for(Week aLightSetElement : currEnumSet) {

System.out.println("当前EnumSet中数据为:" +aLightSetElement);

}

;

Week[] weeks= Week.class.getEnumConstants();

}/***

* 演示EnumMap的使用,EnumMap跟HashMap的使用差不多,只不过key要是枚举类型*/

private static voidtestEnumMap() {

EnumMap currEnumMap = new EnumMap(Week.class);//1.演示定义EnumMap对象,EnumMap对象的构造函数需要参数传入,默认是key的类的类型

currEnumMap.put(Week.MON,"星期1");

currEnumMap.put(Week.TUES,"星期2");

currEnumMap.put(Week.WEB,"星期3");

currEnumMap.put(Week.THUR,"星期4");

currEnumMap.put(Week.FRI,"星期5");

currEnumMap.put(Week.SAT,"星期6");

currEnumMap.put(Week.SUN,"星期7");for(Week aLight : Week.values()) {

System.out.println("[key=" + aLight.name() + ",value="

+ currEnumMap.get(aLight) + "]");

}

}/***

* 演示枚举类型的遍历*/

private static voidtestTraversalEnum() {

Light[] allLight=Light.values();for(Light aLight : allLight) {

System.out.println("当前灯name:" +aLight.name());

System.out.println("当前灯ordinal:" +aLight.ordinal());

System.out.println("当前灯:" +aLight);

}

}public enumLight {//利用构造函数传参

RED(1), GREEN(3), YELLOW(2);//定义私有变量

private intnCode;//构造函数,枚举类型只能为私有

private Light(int_nCode) {this.nCode =_nCode;

}

@OverridepublicString toString() {return String.valueOf(this.nCode);

}

}

}

java枚举 星期_Java 枚举相关推荐

  1. java枚举 数字_java 枚举

    Java中枚举的线程安全性及序列化问题 --枚举是如何保证线程安全的 要想看源码,首先得有一个类吧,那么枚举类型到底是什么类呢?是enum吗?答案很明显不是,enum就和class一样,只是一个关键字 ...

  2. java 枚举 大小_Java枚举入门

    枚举类(掌握) 枚举的诞生历史(了解) 在服装行业,衣服的分类根据性别可以表示为三种情况:男装.女装.中性服装. private ? type: public void setType(? type) ...

  3. java 枚举 注解_Java枚举类和注解梳理

    1. 枚举类 1. 枚举类的使用 枚举类的理解:类的对象只有有限个,确定的.我们称此类为枚举类. 当需要定义一组常量时,强烈建议使用枚举类. 如果枚举类中只有一个对象,则可以作为单例模式的实现方式. ...

  4. java枚举类型转换_java枚举类型enum值与整数的转换

    java编程中偶尔会用到枚举,为了直观,我们通常将枚举值设置为形象的单词,方便理解和使用.枚举类型相当于数据库 中字典表,但是枚举只有字典表的值,缺少其他用来表示和值一一对应的字段,当我们在数据库中保 ...

  5. java枚举数字_Java枚举类型的使用,数值的二进制表示

    一.Java枚举类型的使用 首先请看这段代码: packagejava上课;public classEnumTest {public static voidmain(String[] args) { ...

  6. java枚举数字_Java 枚举 通过数字实例化枚举类型

    package com.zjl.domain.enumtype; /** * 枚举类 * * @Author zjl * @Date 2018/06/27 */ public enum EnumTyp ...

  7. java 枚举 接口_java枚举接口

    java中的枚举类 枚举类(enum),与class和interface关键字地位相同. 枚举类是一个特殊的类,可以有自己的成员变量.方法.构造器,可以实现一个或多个接口.一个java源文件中只能有一 ...

  8. java枚举 赋值_java 枚举 - java 枚举构造函数赋值-java 枚举 set 赋值-嗨客网

    Java枚举教程 我们已经了解了 Java枚举详解 语法 [public] enum 枚举类型名称{ 枚举对象1,枚举对象2,枚举对象3...枚举对象n; } 参数 参数 描述 [public] 可选 ...

  9. java输入枚举型_Java 枚举型为什么是静态的,以及是怎么实现的?

    确实,枚举类型总让我们觉着怪怪的,无论是语法还是静态非静态,还是操作方法,总让人觉着它和数组.列表等格格不入.那到底是为什么呢? 我们从本质分析下java的枚举类型. 1 枚举类型初探 枚举类型,其语 ...

最新文章

  1. 微软谈开源、赦盗版背后的商业逻辑
  2. 架构 php_十年PHP架构师的成长之路,程序员必备
  3. smartforms打印不了可能问题
  4. 去掉“3_人民日报语料”中每行前边的数字编号,改成“1, 2,......”
  5. OpenCV级联识别器cascade recognizer的实例(附完整代码)
  6. 微软发布ML.NET 1.0,可一键添加机器学习模型
  7. 招远西苑学校计算机老师,招远市西苑学校积极开展综合实践活动
  8. spark 2.2 读取 Hadoop3.0 数据异常 org.apache.hadoop.hdfs.web.HftpFileSystem cannot access its superinterfa
  9. ScrollView嵌套ListView冲突问题的最优解决方式
  10. php 0补全,PHP给数字或字符串补零0或自动补全其他符号
  11. exfat最佳单元大小_回音壁构造和单元相关的个人看法
  12. 如何获取瘦人肠道菌群_瘦人想要长胖,调节肠道菌群很重要
  13. APP离线后,通过SystemClock.elapsedRealtime()校正时间
  14. 【LeetCode刷题】Greedy贪心算法笔记
  15. 阿里内部信:构建“大中台、小前台”组织机制
  16. 彻悟人生,句句肺腑!!(被千万人转载的一篇文章)
  17. Linux计划任务管理
  18. 嵌入式软件工程师面试题收录(1)
  19. 土地测量 造成高房价的原因有许多,比如土地出让价格。既然地价高,土地的面积必须仔细计算。 遗憾的是,有些地块的形状不规则,比如是如图【1.jpg】中所示的五边形。
  20. 参加2022中国计算机设计大赛软件应用web赛道总结

热门文章

  1. Springboot——拦截器
  2. ng2-tab选项卡
  3. C# 数据库查询语句1
  4. 不对代码做测试就像“上完厕所不洗手”
  5. 微信拜年信息“大爆发”,真挚的祝福只剩下粘帖与群发
  6. yyb博客的几道神仙题
  7. android move事件,Android的浏览器不处理touchmove事件正确
  8. Google主要产品大全
  9. POWER BI:关于ssas模型更新
  10. mindManager中修改主题,便签、便笺的背景