.ordinal()enum FoodCategory {
BREAD, CAKE, COFFEE, BEVERAGE
}
System.out.println(FoodCategory.CAKE.ordinal()); //1
.name()enum FoodCategory {
BREAD, CAKE, COFFEE, BEVERAGE
}
System.out.println(FoodCategory.CAKE.name()); //CAKE
enum의 생성자는 private임.
// 불가능한 코드
FoodCategory foodCategory = new FoodCategory(…);
- 상수의 끝맺음에 반드시 세미콜론 써야함.
- 특정한 값의 정의에 맞게 반드시 생성자를 정의해야함.
enum FoodCategory {
BREAD(2800),
CAKE(17000),
COFFEE(4300),
BEVERAGE(2500);
int cost;
FoodCategory(int cost) {
this.cost = cost;
}
}
System.out.println(FoodCategory.BREAD.cost); //2800
System.out.println(FoodCategory.CAKE.cost); //17000
System.out.println(FoodCategory.COFFEE.cost); //4300
System.out.println(FoodCategory.BEVERAGE.cost); //2500
enum FoodCategory {
BREAD("빵", 2800),
CAKE("케이크", 17000),
COFFEE("커피", 4300),
BEVERAGE("음료", 2500);
int name;
int cost;
FoodCategory(String name, int cost) {
this.name = name;
this.cost = cost;
}
}
System.out.println(FoodCategory.CAKE.name); //케이크
System.out.println(FoodCategory.CAKE.cost); //17000