Java 菜鸟教程

Java 流程控制

Java 数组

Java 面向对象(I)

Java 面向对象(II)

Java 面向对象(III)

Java 异常处理

Java 列表(List)

Java Queue(队列)

Java Map集合

Java Set集合

Java 输入输出(I/O)

Java Reader/Writer

Java 其他主题

Java 枚举与字符串

在本教程中,我们将学习了解枚举常量的字符串值。我们还将借助示例学习重写枚举常量的默认字符串值。

Java枚举字符串

在学习枚举字符串之前,请确保已经了解Java枚举

在Java中,我们可以使用toString()或name()方法获得枚举常量的字符串表示形式。例如,

enum Size {
   SMALL, MEDIUM, LARGE, EXTRALARGE
}

class Main {
   public static void main(String[] args) {

      System.out.println("SMALL的字符串值为 " + Size.SMALL.toString());
      System.out.println("MEDIUM的字符串值为 " + Size.MEDIUM.name());

   }
}

输出结果

SMALL的字符串值为 SMALL
MEDIUM的字符串值为 MEDIUM

在上面的示例中,我们已经看到枚举常量的默认字符串表示形式是相同常量的名称。

更改枚举的默认字符串值

我们可以通过重写toString()方法来更改枚举常量的默认字符串表示形式。例如,

enum Size {
   SMALL {

      //重写toString()为SMALL
      public String toString() {
        return "The size is small.";
      }
   },

   MEDIUM {

     //重写toString()为MEDIUM
      public String toString() {
        return "The size is medium.";
      }
   };
}

class Main {
   public static void main(String[] args) {
      System.out.println(Size.MEDIUM.toString());
   }
}

输出结果

The size is medium.

在上面的程序中,我们创建了一个枚举Size。并且我们已经重写了枚举常量SMALL和MEDIUM的toString()方法。

注意:我们无法重写name()方法。这是因为name()方法是final类型。