2011-09-28 61 views

回答

3
enum Hardware 
{ 
    USB2("external low speed"), 
    PCI("embedded"), 
    USB3("external high speed"); 

    private String val; 

    private Hardware(String val){ 
     this.val = val; 
    } 

    public String toString(){ 
     return val; 
    } 
} 
+0

谢谢,我不想制作外部文件。所以这工作。 – YumYumYum

6

您可以在enums中定义members。然后覆盖toString()

您可以定义一个getDesc()方法,该方法更好地覆盖IMO,覆盖toString()

public enum Hardware 
{ 
    USB2(0, "external low speed"), 
    PCI(1,"embedded"), 
    USB3(2,"external high speed"); 

    private String desc; 
    private int id; 

    private Hardware(int id, String desc) { 
     this.id = id; 
     this.desc = desc; 
    } 

    @Override 
    public String toString() { 
     return this.desc; 
    } 
} 

只要注意这是解决方案可开始Java版本1.5

+2

构造缺少的,否则这是正确的。 –

+0

+1谢谢指出构造函数 – ssedano

1
public enum Hardware { 
    USB2(0, "external low speed"), 
    PCI(1,"embedded"), 
    USB3(2,"external high speed); 

    String desc; 
    int id; 

    public Hardware(int id, String desc) { 
     this.id = id; 
     this.desc = desc; 
    } 

    public String toString() { 
     return this.desc; 
    } 
} 
相关问题