2011-11-09 27 views
9

Giả sử tôi có một số enum như sau:Làm thế nào tôi có thể liên kết một chuỗi với mỗi thành viên của một enum?

enum Towns { Rome, Napoli, Modena } 

Tôi muốn kết hợp một chuỗi cho mỗi thành viên enum. Lý tưởng nhất, chuỗi phải là một mô tả. Tôi muốn đảm bảo rằng mỗi thị trấn đều có mô tả:

Rome - Beautiful 
Napoli - Good pizza 
Modena - Ferrari store 

Tôi cũng muốn báo lỗi thời gian biên dịch nếu một số thị trấn không có mô tả.

Trả lời

16
public enum Towns { 
    Rome("rome") 
    , Napoli("napoli") 
    , Modena("modena"); 

    private String desc; 
    Towns(String desc) { 
     this.desc=desc; 
    } 

    public String getDesc() { 
     return desc; 
    } 
} 
4
enum Towns { 
    Rome("Rome-beautiful"); 
    //add other enum types here too 

    private String desc; 
    Towns(String desc) 
    { 
     this.desc=desc; 
    } 

    public String getDesc() 
    { 
     return desc; 
    } 
} 

Enums được đối xử như các lớp học. Bạn có thể viết một hàm tạo, có các biến và hàm thành viên. Vẻ đẹp là, hàm tạo được gọi cho từng loại enum và trạng thái được duy trì cho mỗi loại/

Các vấn đề liên quan