Java的枚举类型使用指南

测试代码:

public class EnumTest {

public static void main(String[] args) {
    Size s=Size.SMALL;
    Size t=Size.LARGE;
    //s和t引用同一个对象?
    System.out.println(s==t);  //
    //是原始数据类型吗?
    System.out.println(s.getClass().isPrimitive());
    //从字符串中转换
    Size u=Size.valueOf("SMALL");
    System.out.println(s==u);  //true
    //列出它的所有值
    for(Size value:Size.values()){
        System.out.println(value);
    }
}

}
enum Size{SMALL,MEDIUM,LARGE};
这段代码定义了一个名为 EnumTest 的 Java 类,演示了如何使用 Java 枚举(enum)类型。下面是每一部分代码的详细解释:

  1. 类和主方法定义
    java
    public class EnumTest {

    public static void main(String[] args) {

该类 EnumTest 是一个公共类。
main 方法是程序的入口点,Java 程序从这里开始执行。

  1. 枚举实例的比较
    java
    Size s = Size.SMALL;
    Size t = Size.LARGE;
    System.out.println(s == t); //

这里创建了两个枚举实例,s 被赋值为 Size.SMALLt 被赋值为 Size.LARGE
使用 == 运算符比较 st。由于它们代表不同的枚举值,因此这个比较结果为 false,输出 false

  1. 检查是否是原始数据类型
    java
    System.out.println(s.getClass().isPrimitive());

通过 s.getClass() 获取 s 的类对象,然后调用 isPrimitive() 方法检查该类是否为原始数据类型。
枚举不属于原始数据类型,因此此输出为 false

  1. 从字符串转换为枚举
    java
    Size u = Size.valueOf("SMALL");
    System.out.println(s == u); // true

Size.valueOf("SMALL")方法将字符串"SMALL"转换为对应的枚举常量Size.SMALL,并将结果赋值给 u。 因此,su都指向同一个枚举常量Size.SMALL,所以这行代码输出 true`。

  1. 列出所有枚举值
    java
    for (Size value : Size.values()) {
    System.out.println(value);
    }
    Size.values() 会返回一个包含 Size 枚举中所有常量的数组。
    使用增强的 for 循环遍历这些常量,并打印它们的名称。
    这将分别输出枚举中定义的所有值:
    SMALL
    MEDIUM
    LARGE

  2. 枚举定义
    java
    enum Size { SMALL, MEDIUM, LARGE };

这行代码定义了一个名为 Size 的枚举,其中包含三个常量:SMALLMEDIUMLARGE

posted @ 2024-09-28 20:03  3jingsh0u  阅读(20)  评论(0)    收藏  举报