public class TestEnum {

/*最普通的枚举*/

public enum ColorSelect {

red, green, yellow, blue;

}

/* 枚举也可以象一般的类一样添加方法和属性,你可以为它添加静态和非静态的属性或方法,这一切都象你在一般的类中做的那样. */

public enum Season {

// 枚举列表必须写在最前面,否则编译出错

winter, spring, summer, fall;

private final static String location = "Phoenix";

public static Season getBest() {

if (location.equals("Phoenix"))

return winter;

else

return summer;

}

}

/*还可以有构造方法*/

public enum Temp {

/*通过括号赋值,而且必须有带参构造器和一属性跟方法,否则编译出错

* 赋值必须是都赋值或都不赋值,不能一部分赋值一部分不赋值

* 如果不赋值则不能写构造器,赋值编译也出错*/

absoluteZero(-459), freezing(32),boiling(212), paperBurns(451);

private final int value;

public int getValue() {

return value;

}

//构造器默认也只能是private, 从而保证构造函数只能在内部使用

Temp(int value) {

this.value = value;

}

}

public static void main(String[] args) {

/*

* 枚举类型是一种类型,用于定义变量,以限制变量的赋值 赋值时通过"枚举名.值"来取得相关枚举中的值

*/

ColorSelect m = ColorSelect.blue;

switch (m) {

/*注意:枚举重写了ToString(),说以枚举变量的值是不带前缀的

*所以为blue而非ColorSelect.blue

*/

case red:

System.out.println("color is red");

break;

case green:

System.out.println("color is green");

break;

case yellow:

System.out.println("color is yellow");

break;

case blue:

System.out.println("color is blue");

break;

}

System.out.println("遍历ColorSelect中的值");

/*通过values()获得枚举值的数组*/

for (ColorSelect c : ColorSelect.values()) {

System.out.println(c);

}

System.out.println("枚举ColorSelect中的值有:"+ColorSelect.values().length+"个");

/*ordinal()返回枚举值在枚举中的索引位置,从0开始*/

System.out.println(ColorSelect.red.ordinal());//0

System.out.println(ColorSelect.green.ordinal());//1

System.out.println(ColorSelect.yellow.ordinal());//2

System.out.println(ColorSelect.blue.ordinal());//3

/*枚举默认实现了java.lang.Comparable接口*/

System.out.println(ColorSelect.red.compareTo(ColorSelect.green));

System.out.println(Season.getBest());

for(Temp t:Temp.values()){

/*通过getValue()取得相关枚举的值*/

System.out.println(t+"的值是"+t.getValue());

}

}

}

java枚举变量带括号_java枚举类型 - 墨梅的个人空间 - OSCHINA - 中文开源技术交流社区...相关推荐

  1. java动态变量名反射_Java动态性—反射 - Eclipse666的个人空间 - OSCHINA - 中文开源技术交流社区...

    1.什么是动态语言? 程序运行时,可以改变程序的结构或者变量类型:如Python,javaScript function(){ var s="var a=3;var b=4;" e ...

  2. java io 读取配置文件_java读取配置文件 - tomzhao2008的个人空间 - OSCHINA - 中文开源技术交流社区...

    对于要打包成jar文件来运行来说,用file是会有问题的,下面的程序可以解决这样的问题 1.ReadPropsUtil /** * */ package readproperties; import ...

  3. java的异常解析_java异常解析 - liop的个人空间 - OSCHINA - 中文开源技术交流社区...

    抛出异常,捕捉异常,输出异常. /** * 自定义异常类 */ public class CustomerException extends RuntimeException { private St ...

  4. java io流拒绝访问_JAVA IO流 - 张宏良的个人空间 - OSCHINA - 中文开源技术交流社区...

    IO流 一.File类的使用 java.io.File类:文件和文件目录路径的抽象表示形式,与平台无关 File能新建.删除.重命名文件和目录,但File不能访问文件内容本身.如果需要访问文件内容本身 ...

  5. java知识理论_JAVA理论知识 - OSC_rnoszD的个人空间 - OSCHINA - 中文开源技术交流社区...

    1. final关键字可以用来修饰什么?分别起什么作用? a) final可以修饰类,这样的类不能被继承. b) final可以修饰方法,这样的方法不能被重写. c) final可以修饰变量,这样的变 ...

  6. java 的“mwq”_java的对象模型 - osc_mwqvsfzo的个人空间 - OSCHINA - 中文开源技术交流社区...

    java中的对象在内存中,究竟是怎样一种存在? 这篇随笔,我们就来一探究竟.可能不够深入,但是我们把理解到位,深入到我们需要的程度这样即可. 先来看下jvm的内存模型: 程序计数器 虚拟机栈和本地方法 ...

  7. java记录类加载的个数_java类加载过程 - audience_1的个人空间 - OSCHINA - 中文开源技术交流社区...

    java类加载过程: 在我们代码中,一般就一个new的方法,就能够创建一个java的对象类,但在java虚拟机中 1:首先,我们需要判断该类是否已经在方法区中的常量池中有一个类的符号的引用存在,如果该 ...

  8. java课程总结_Java课程总结 - osc_uyb9f22c的个人空间 - OSCHINA - 中文开源技术交流社区...

    总结:已经学了一个学期的Java,虽然在课堂上面还是很认真的听讲,但在课后,基本上没有复习与巩固,导致感觉没有C语言学的好,最后的面试结果也不是很令人满意.在以后的学习中,要改变学习方式.做什么事都要 ...

  9. 5.0 java集合框架中的接口collection属于_JAVA集合框架 - osc_cyo2dovg的个人空间 - OSCHINA - 中文开源技术交流社区...

    一.为什么要使用集合 单个数据,可以用变量保存: 多个数据,可以用数组保存: 但是对于存储多个数据且数量不确定的情况,使用集合: 二.集合和数组的区别 (1)数组: 1.只能保存同一种类型的数据: 2 ...

最新文章

  1. python自己做电子词典_python实现电子词典
  2. 常用排序算法 - 稳定性和复杂度分析
  3. hdu4499 搜索
  4. 课堂练习之四则运算加强版
  5. 手工卸载oracle,升级和卸载Oracle数据库软件的命令整理
  6. HTML中的camera标签,详解HTML5 使用video标签实现选择摄像头功能
  7. glide 压缩图拍呢_用Glide-图片的压缩-图片压缩原理
  8. c语言中二叉树中总结点,C语言二叉树的三种遍历方式的实现及原理
  9. show status和show variables区别解析
  10. 深入理解Java main方法
  11. 基于HAProxy的网站架构
  12. Epic Games资深程序工程师王祢: 使用UE4制作VR内容的优化
  13. python连接数据库的技术_(技术)Python 3 与 pymysql 操作数据库
  14. springboot细节挖掘(数据初始化)
  15. 怎么修照片多余的部分_眉毛不会画怎么办?眉笔眉粉染眉膏到底怎么选?看完就会了...
  16. 循环群、对称群、陪集和拉格朗日定理、正规子群和商群
  17. 无人机行业的机遇与挑战
  18. 计蒜客习题:猴子打字
  19. 当职场中领导问是否有男朋友要怎么应对
  20. Vue - 调用接口导出 excel 表格至本地

热门文章

  1. 使用方法 ros_大白菜的ROS笔记(8)(创建TF广播和监听,内容很多,细节满满)...
  2. ORACLE 10G rman 备份脚本
  3. CPU飙高 解决方法
  4. @RunWith@ContextConfiguration进行Spring上下文测试报错
  5. INSTALL_FAILED_VERSION_DOWNGRADE报错
  6. 基于JAVA+SpringBoot+Mybatis+MYSQL的校园新闻管理系统
  7. Bootstrap treeview 添加滚动条后 搜索完成滚动条自动移动到对应位置
  8. Windows 下搭建 Ruby 开发环境
  9. Java学习笔记17(面向对象十:综合案例)
  10. jQuery hover事件