Ich habe in Java 8 eine Aufzählung wie folgt definiert:
public enum Cflb implements IBaseEnum {
没收违法所得("没收违法所得、没收非法财物", 2),
暂扣或者吊销许可证("暂扣或者吊销许可证、暂扣或者吊销执照", 4);
private String name;
private int value;
public void setName(String name) {
this.name = name;
}
public void setValue(int value) {
this.value = value;
}
Cflb(String name, int value) {
this.name = name;
this.value = value;
}
@Override
public String getName() {
return name;
}
@Override
public int getValue() {
return value;
}
}
Wie erhalte ich eine Aufzählung durch "Lizenz aussetzen oder widerrufen, Lizenz vorübergehend zurückhalten oder widerrufen"? Achtung: Die Aufzählung nicht nach Wert abrufen. Der Code könnte so aussehen:
Cflb cflb = getEnumnByInternalName("暂扣或者吊销许可证、暂扣或者吊销执照");
Schleifen Sie die Enum-Konstanten mit values()
und vergleichen Sie die name
:
static Cflb getEnumnByInternalName(String iname) {
for(Cbfl c : values()){
if(c.name.equals(iname)){
return c;
}
}
return null; //or throw an Exception, whatever you need
}
Dann kannst du es so verwenden:
Cflb cflb = Cflb.getEnumnByInternalName("暂扣或者吊销许可证、暂扣或者吊销执照");
Und wie @khelwood oben erwähnt: Entfernen Sie die Setter.
Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.
Bei Verstößen wenden Sie sich bitte [email protected] Löschen.
Lass mich ein paar Worte sagen