java枚举类,实例代码分享

今天要为大家介绍的就要有关枚举类的一些知识了,并且会用实际的代码为大家展示出来,一起来了解一下吧。

首先说一下枚举类。

java中的每一个枚举都继承自java.lang.Enum 类。当定义一个枚举类型时,每一个枚举类型成员都可以看作是Enum类的实例,这些枚举成员默认都被finalpublic, static修饰,当使用枚举类型成员时,直接使用枚举名称调用成员即可。

实例展示1

通过调用枚举类型实例的values()方法可以将枚举的所有成员以数组形式返回,也可以通过该方法获取枚举类型的成员。

下面的示例创建一个包含3个成员的枚举类型Signal,然后调用values()方法输出这些成员。代码展示如下:

enum Signal
{
    //定义一个枚举类型
    GREEN
    , YELLOW
    , RED;
}
public static void main(String[] args)
{
    for (int i = 0; i < Signal.values()
        .length; i++)
    {
        System.out.println("枚举成员:" + Signal.values()[i]);
    }
}

输出结果如下,代码如下:

枚举成员: GREEN
枚举成员: YELLOW
枚举成员: RED

实例展示2

创建一个示例,调用valueOf()方法获取枚举的一个成员,再调用compareTo()方法进行比较,并输出结果。具体实现代码如下:

public class TestEnum
{
    public enum Sex
    {
        //定义一个枚举
        male
        , female;
    }
    public static void main(String[] args)
    {
        compare(Sex.valueOf("male")); //比较
    }
    public static void compare(Sex s)
    {
        for (int i = 0; i < Sex.values()
            .length; i++)
        {
            System.out.println(s + "与" + Sex.values()[i] + "的比较结果是:" + s.compareTo(Sex.values()[i]));
        }
    }
}

上述代码中使用Sex.valueOf(“male”)取出枚举成员male对应的值,再将该值与其他枚举成员进行比较。最终输出结果如下:

male与male的比较结果是:0

male与female的比较结果是:-1

实例展示3

通过调用枚举类型实例的ordinal()方法可以获取一个成员在枚举中的索引位置。下面的示例创建一个包含3个成员的枚举类型Signal,然后调用ordinal()方法输出成员及对应索引位置。

具体实现代码如下:

public class TestEnum1
{
    enum Signal
    {
        //定义一个枚举类型
        GREEN
        , YELLOW
        , RED;
    }
    public static void main(String[] args)
    {
        for (int i = 0; i < Signal.values()
            .length; i++)
        {
            System.out.println("索引" + Signal.values()[i].ordinal() + ",值:" + Signal.values()[i]);
        }
    }
}

输出结果代码如下:

索引0, 值: GREEN
索引1, 值: YELLOW
索引2, 值: RED

为枚举添加方法。java为枚举类型提供了一些内置的方法,同时枚举常量也可以有自己的方法。此时要注意必须在枚举实例的最后一个成员后添加分号,而且必须先定义枚举实例。

以上就是关于java枚举类的实例代码分享了。如果你对java知识感兴趣,想要了解更多java经典例子,敬请关注奇Q工具网。

推荐阅读:

java枚举(enum)详解,枚举类

java枚举使用实例,怎样使用枚举类型设置常量?

java枚举类型enum用法是怎样的?java枚举用法示例