שיטת valueOf() של מחלקה Enum מחזירה את קבוע ה-enum (של סוג enum מוגדר) יחד עם השם המוגדר.
תחביר
public static <t extends enum> T valueOf(Class enumType,String name) </t>
פרמטרים של סוג:
ט : זהו סוג ה-enum שהקבוע שלו מתקבל.
פרמטרים
enumType - אובייקט Class מסוג enum הוא שמחזיר קבוע
שֵׁם - זה שם הקבוע שיש להחזיר
ערך החזרה
השיטה valueOf() מחזירה את קבוע ה-enum יחד עם השם המוגדר.
זורק
השיטה valueOf() זורקת:
- IllegalArgumentException, אם סוג ה-enum המוגדר אינו קבוע עם השם המוגדר או שסוג enum אינו מומחש על-ידי אובייקט המחלקה המוגדר.
- NullPointerException, אם enumType או שם מייצגים ערך 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); } }בדוק את זה עכשיו
תְפוּקָה:
מפעיל java
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)