1. 程式人生 > >java列舉型別使用switch case

java列舉型別使用switch case

列舉類:

public enum ContractTempletEnumCopy {
  PPT(1), SIGNT(2), UNKNOWN(-1);
  private Integer id;

  ContractTempletEnumCopy(Integer id) {
    this.id = id;
  }

  public Integer getId() {
    return this.id;
  }
  public void setId(Integer id) {
    this.id = id;
  }


  public static ContractTempletEnumCopy valueOf(Integer id) {
    ContractTempletEnumCopy[] values = ContractTempletEnumCopy.values();
    for(ContractTempletEnumCopy value : values){
      if(value.getId() == id){
        return value;
      }
    }
    return UNKNOWN;
  }


}

測試類:

public class TH_01_JavaEnum {

  public static void main(String[] args) {

    TH_01_JavaEnum test = new TH_01_JavaEnum();
    test.action();

  }

  public void action(){
    ContractTempletEnum test = ContractTempletEnum.valueOf(2);
    System.out.println("[1]_" + test);
    switch (test) {
      case PPT:
        System.out.println("[2]_" + test);
        break;
      case SIGNT:
        System.out.println("[2]_" + test);
        break;

    }
  }