一、概述
枚舉類是Java中一種特殊的類,用於定義一組有限的常量。枚舉類在Java 1.5版本中引入,它可以被看做是一種類的模板,枚舉常量則是該模板類的實例。雖然可以使用常量或者final static變數來表示常量,但是枚舉類的優點在於它可以將常量進行分組管理,並提供便捷的枚舉操作方法。
二、定義枚舉類
定義一個簡單的枚舉類非常容易,只需要使用關鍵字 enum 加上枚舉類的名稱,然後在大括弧中定義常量即可。
enum Direction { NORTH, SOUTH, EAST, WEST; }
在這個例子中,我們定義了一個名為 Direction 的枚舉類,它有四個常量:NORTH、SOUTH、EAST、WEST。枚舉類中的每個枚舉常量都是該枚舉類的實例。枚舉常量默認情況下是 public static final 的。
三、枚舉操作
1. 遍歷枚舉值
Java提供了一個 Enum.values() 方法,可以方便地遍歷枚舉常量。
for (Direction d : Direction.values()) { System.out.println(d); }
該示例中,我們遍歷了 Direction 枚舉類中的所有常量。輸出結果為:
NORTH SOUTH EAST WEST
2. 獲取枚舉常量的名稱、序號和值
Java提供了以下三個操作枚舉常量的方法,可以獲取枚舉常量的名稱、序號和值:
- String name():返回枚舉常量的名稱。
- int ordinal():返回枚舉常量的序號,從0開始計數。
- T valueOf(Class enumType, String name):返回值為 name 的枚舉常量。
Direction d = Direction.EAST; System.out.println(d.name()); //輸出 EAST System.out.println(d.ordinal()); //輸出 2 Direction d2 = Enum.valueOf(Direction.class, "NORTH"); System.out.println(d2); //輸出 NORTH
四、實現介面
枚舉類同樣可以實現介面,枚舉常量可以重寫介面中的方法。
interface Color { String getColor(); } enum TrafficLight implements Color { RED { public String getColor() { return "紅色"; } }, YELLOW { public String getColor() { return "黃色"; } }, GREEN { public String getColor() { return "綠色"; } }; } TrafficLight t = TrafficLight.RED; System.out.println(t.getColor()); //輸出 紅色
五、總結
本文對Java枚舉類做了詳細的介紹,包括枚舉類的定義、枚舉操作的方法、實現介面等方面。枚舉類在編程中極為常用,它可以有效地避免代碼中出現硬編碼的情況,並且可以方便地進行管理和操作。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/236967.html