Enum 클래스의 valueOf() 메소드는 정의된 이름과 함께 정의된 enum 유형의 enum 상수를 반환합니다.
통사론
public static <t extends enum> T valueOf(Class enumType,String name) </t>
유형 매개변수:
티 : 상수가 산출되는 열거형입니다.
매개변수
열거형 - 상수를 반환하는 enum 타입의 Class 객체입니다.
이름 - 반환할 상수의 이름입니다.
반환 값
valueOf() 메서드는 정의된 이름과 함께 열거형 상수를 반환합니다.
던지기
valueOf() 메소드는 다음을 발생시킵니다:
- IllegalArgumentException, 정의된 열거형 유형이 정의된 이름과 일치하지 않거나 정의된 클래스 객체에서 열거형 유형을 설명하지 않는 경우.
- NullPointerException, enumType 또는 name이 null 값을 나타내는 경우.
실시예 1
enum Parts{ Skin, Muscles,Bones,Organs,Tissue; } public class Enum_valueOfMethodExample1 { public static void main(String[] args) { System.out.println('The part which is exposed to the environment is :'); for(Parts part : Parts.values()){ int i = part.ordinal()+1; System.out.println(i+' '+part); } Parts part = Parts.valueOf('Skin'); System.out.println(' Ans: '+part); } }지금 테스트해보세요
산출:
자바 우선 순위 대기열
The part which is exposed to the environment is : 1 Skin 2 Muscles 3 Bones 4 Organs 5 Tissue Ans: Skin
실시예 2
enum Flower{ Rose,Lily, Orchids, Sunflower,Jasmine; } public class Enum_valueOfMethodExample2 { public static void main(String[] args) { System.out.println('The part which is exposed to the environment is :'); for(Flower flower : Flower.values()) { System.out.println(Flower.valueOf(' ')); } } }지금 테스트해보세요
산출:
Exception in thread 'main' java.lang.IllegalArgumentException: No enum constant com.javaTpoint.Flower. The part which is exposed to the environment is : atjava.lang.Enum.valueOf(Enum.java:238) atcom.javaTpoint.Flower.valueOf(Enum_valueOfMethodExample2.java:4) at com.javaTpoint.Enum_valueOfMethodExample2.main(Enum_valueOfMethodExample2.java:11)