1. Enum
Enum là một kiểu dữ liệu đặc biệt, về cơ bản enum là một tập các hằng số.
Đây là một ví dụ về enum:
2. Gán giá trị cho kiểu enum.
3. Sử dụng enum trong mệnh đề if-else.
Biến có kiểu enum có thể được dùng trong mệnh đề if-else.
Enum là một kiểu dữ liệu đặc biệt, về cơ bản enum là một tập các hằng số.
Đây là một ví dụ về enum:
public enum Directions{ EAST, WEST, NORTH, SOUTH }Ở đây Directions là một kiểu enum, là một tập chứa 4 hằng số EAST, WEST, NORTH và SOUTH.
2. Gán giá trị cho kiểu enum.
Directions dir = Directions.NORTH;Biến dir có kiểu là Direction, có thể nhận bất kỳ giá trị nào trong bốn giá trị (EAST, WEST, NORTH, SOUTH). Trong ví dụ trên dir nhận giá trị NORTH.
3. Sử dụng enum trong mệnh đề if-else.
Biến có kiểu enum có thể được dùng trong mệnh đề if-else.
public enum Directions{ EAST, WEST, NORTH, SOUTH } public class EnumDemo { public static void main(String args[]){ Directions dir = Directions.NORTH; if(dir == Directions.EAST) { System.out.println("Direction: East"); } else if(dir == Directions.WEST) { System.out.println("Direction: West"); } else if(dir == Directions.NORTH) { System.out.println("Direction: North"); } else { System.out.println("Direction: South"); } } }Output:
Direction: North4. Sử dụng enum trong mệnh đề Swich-Case
public enum Directions{ EAST, WEST, NORTH, SOUTH } public class EnumDemo { Directions dir; public EnumDemo(Directions dir) { this.dir = dir; } public void getMyDirection() { switch (dir) { case EAST: System.out.println("In East Direction"); break; case WEST: System.out.println("In West Direction"); break; case NORTH: System.out.println("In North Direction"); break; default: System.out.println("In South Direction"); break; } } public static void main(String[] args) { EnumDemo obj1 = new EnumDemo(Directions.EAST); obj1.getMyDirection(); EnumDemo obj2 = new EnumDemo(Directions.SOUTH); obj2.getMyDirection(); } }Output:
In East Direction In South DirectionXem các giá trị của enum.
class EnumDemo { public static void main(String[] args) { for (Directions dir : Directions.values()) { System.out.println(dir); } } }Output:
EAST WEST NORTH SOUTH