zoukankan      html  css  js  c++  java
  • Java枚举类

    首先,枚举是jdk1.5添加的一个新的功能。在1.5之前,我们定义一个常量都是public static final.....对于虚拟机来说,final关键字是比普通的定义常量更加消耗内存。

    在引入枚举之后,我们可以

    public enum Size {
        SMALL,MEDIUM,LARGE,EXTRA_LARGE;
    }

    实际上,这个声明定义的类型是一个类,它刚好有4个实例,在此尽量不要添加新的对象。
    因此,比较两个枚举类型的值的时候,永远不需要调用equals,直接使用“==”就行了。所有得枚举类型都是Enum的子类,他们继承了这个类的很多方法,其中最常用的就是toString,
    String small=Size.SMALL.toString();

    输出字符串变量small 就会显示“SMALL”;
    toString的逆方法是静态方法ValueOf,例如
    Size z=Enum.valueOf(Size.class,"SMALL");//将z设置成Size.SMALL;

    每个枚举类型都有一个静态的values方法,他将返回一个包含全部枚举值的数组
    Size[] values=Size.values();
    //正常枚举循环遍历可以使用
    if(Size.hasMoreElements()){
    Object s=Size.nextElement();
    }
    补充:枚举里存放的是常量,是不可以改变的。想要改变里面的值可以转换成其他类型来进行操作,比如上面的values()。

    不和别人一样,不复制只真正理解
  • 相关阅读:
    Lua环境
    WebKit
    Net线程间通信的异步机制
    Cucumber入门1 传统流程下的使用
    Windows Server 2008中安装IIS7.0
    WebCore
    百度云计算平台Python环境试用
    认识ASP.NET MVC的5种AuthorizationFilter
    浅谈java中常见的排序
    go语言中goroutine的使用
  • 原文地址:https://www.cnblogs.com/Vinlen/p/12749758.html
Copyright © 2011-2022 走看看