Sử dụng Enum trong lập trình Java

Giới thiệu nội dung bài viết

Trong ngôn ngữ lập trình Java, Enum được xem là một kiểu dữ liệu đặc biệt. Được sử dụng để nhóm các biến có giá trị không đổi trong suốt chương trình vào một chỗ. Bài viết dưới đây sẽ hướng dẫn bạn cách làm như thế nào để khai báo một Enum? Đưa ra các ví dụ minh hoạ cho cách sử dụng Enum, phương thức của Enum trong lập trình Java. Đồng thời qua bài viết, giúp bạn hiểu được tại sao nên dùng Enum trong các chương trình lập trình hướng đối tượng Java.


1. Enum trong lập trình Java là gì

  • Enum là một lớp đặt biệt trong java nó dùng để nhóm các biến có giá trị không thay đổi trong suốt chương trình vào một chỗ. Anh ví dụ như trong ứng dụng game mình có độ khó của game là level Low, Medium,High. Đây là những giá trị không thể thay đổi được giống như nguyên lý PI = 3.14 vậy. Như vậy trong chương trình của mình nếu không dùng Enum thì mình sẽ dùng từ khoá final để nói là giá trị này là bất biến không thay đổi. Nhưng tạo nhiều final quá thì khó quản lý thay vì vậy mình dùng Enum cho dể quản lý.

  • Để khai báo 1 enum mình sử dụng từ khoá enum. Sau đây mình khai báo email cho class là Level gồm có 3 giá trị LOW, MEDIUM,HIGH

1
2
3
4
5
enum Level {
  LOW,
  MEDIUM,
  HIGH
}
  • Chúng ta sử dụng như sau
1
Level myVar = Level.MEDIUM;
  • Chúng ta có thể sử dụng Enum cho mệnh để Switch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
enum Level {
  LOW,
  MEDIUM,
  HIGH
}

public class MyClass {
  public static void main(String[] args) {
    Level myVar = Level.MEDIUM;

    switch(myVar) {
      case LOW:
        System.out.println("Low level");
        break;
      case MEDIUM:
         System.out.println("Medium level");
        break;
      case HIGH:
        System.out.println("High level");
        break;
    }
  }
}
  • Chúng ta có thể chạy vòng lặp với Enum
1
2
3
for (Level myVar : Level.values()) {
  System.out.println(myVar);
}

Mọi người hãy subcribe kênh youtube dưới đây nhé. Videos về các kỹ năng mềm và lập trình sẽ được cập nhật hằng tuần


Comments