Java getting the Enum name given the Enum Value Java getting the Enum name given the Enum Value java java

Java getting the Enum name given the Enum Value


You should replace your getEnumNameForValue by a call to the name() method.


Try below code

public enum SalaryHeadMasterEnum {    BASIC_PAY("basic pay"),    MEDICAL_ALLOWANCE("Medical Allowance");    private String name;    private SalaryHeadMasterEnum(String stringVal) {        name=stringVal;    }    public String toString(){        return name;    }    public static String getEnumByString(String code){        for(SalaryHeadMasterEnum e : SalaryHeadMasterEnum.values()){            if(e.name.equals(code)) return e.name();        }        return null;    }}

Now you can use below code to retrieve the Enum by Value

SalaryHeadMasterEnum.getEnumByString("Basic Pay")

Use Below code to get ENUM as String

SalaryHeadMasterEnum.BASIC_PAY.name()

Use below code to get string Value for enum

SalaryHeadMasterEnum.BASIC_PAY.toString()


Try, the following code..

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