枚舉類在 Kotlin 中是非常強大和靈活的工具,可以用于表示一組固定的常量,并且可以包含屬性、方法、構造函數和伴生對象。它們在處理狀態、選項等場景中非常有用。
1、枚舉類的定義
- 枚舉類用于創建具有一組數量有限的可能值的類型。
- 枚舉的每個可能值都稱為“枚舉常量”。每個枚舉常量都是一個對象。枚舉常量位于大括號內,互相以英文逗號分隔。按照慣例,常量名稱中的每個字母都要大寫。
- 枚舉類的語法定義如下:
- 使用點運算符來引用枚舉常量。
enum class Direction {NORTH, SOUTH, WEST, EAST
}fun main() {val dir = Direction.NORTH
}
2、枚舉類的屬性和方法
- 枚舉類可以有屬性和方法,就像普通類一樣。
- 由于每個枚舉都是枚舉類的一個實例,,因此它可以被初始化為:
enum class Color(val rgb: Int) {RED(0xFF0000),GREEN(0x00FF00),BLUE(0x0000FF);fun rgbString(): String {return String.format("#%06X", 0xFFFFFF and rgb)}
}
- 屬性:rgb 是一個屬性,每個枚舉常量都可以有自己的值。
- 方法:rgbString 是一個方法,用于將 RGB 值格式化為十六進制字符串。
- 如果枚舉類定義了任何成員,需要用分號將常量定義與成員定義分開。
3、枚舉類的構造函數
- 枚舉類可以有構造函數,用于初始化屬性。構造函數必須是私有的(private),因為枚舉類的實例