Enum เป็นชนิดข้อมูลใน Java ที่มีชุดค่าคงที่ที่กำหนดไว้ล่วงหน้า วันในสัปดาห์ สีเป็นตัวอย่างทั่วไปของ Enum คล้ายกับคลาส คุณสามารถใช้ Enums เพื่อระบุชนิดข้อมูลของคุณเอง Enum สามารถระบุได้ทั้งภายนอกและภายในคลาส แต่ไม่ใช่ในเมธอด
ในชวา “ enum คีย์เวิร์ด ” สามารถใช้เพื่อกำหนดประเภท Enum enum ไม่สามารถสืบทอดคลาสอื่นได้ เนื่องจากมันสืบทอดมาจากคลาส Java Enum ภายใน อย่างไรก็ตาม มันสามารถใช้อินเทอร์เฟซได้หลากหลาย
บทความนี้จะอธิบายการใช้เมธอด valueOf() ของคลาส Enum ใน Java
วิธีการใช้ valueOf () วิธีการของ Enum Java Class?
“ มูลค่าของ() ” ของคลาส Enum ใช้เพื่อรับค่าคงที่ enum ของประเภท enum ที่ระบุพร้อมชื่อ สตริงที่แน่นอนที่ใช้ในการประกาศค่าคงที่ Enum จะถูกส่งไปยังเมธอด valueOf() ซึ่งส่งกลับค่าคงที่ Enum เป็นวิธีการที่คำนึงถึงขนาดตัวพิมพ์ เมธอดนี้ยังมีข้อยกเว้นหากคุณพยายามเข้าถึงสตริงที่ไม่ถูกต้อง
ไวยากรณ์
ไวยากรณ์ต่อไปนี้ใช้สำหรับ ' มูลค่าของ() ' กระบวนการ:
enum.valueOf ( 'ค่าคงที่' )
ที่นี่, ' enum ” เป็นชื่อของ enum ที่ประกาศใช้เรียก “ มูลค่าของ() ” โดยส่ง String เป็น “ ค่าคงที่ ”
ตัวอย่างที่ 1: การเข้าถึงค่าคงที่ Enum
ขั้นแรก เราจะสร้าง enum ชื่อ “ ภาษาการเขียนโปรแกรม ' ใช้ ' enum ” คีย์เวิร์ดที่มีค่าคงที่:
enum ProgrammingLanguages {C, Java, Python
}
ในวิธีการ main() ของ “ ตัวอย่าง ” ขั้นแรกเราจะสร้างวัตถุ “ วางแผน ” ของ enum ProgrammingLanguages ที่เก็บค่าคงที่แล้วเรียกใช้ “ มูลค่าของ() ” วิธีการด้วย enum โดยผ่านสตริง “ Java ” ที่จะใช้เพื่อรับค่าคงที่จาก enum:
ProgrammingLanguages plang = ProgrammingLanguages.valueOf ( 'จาวา' ) ;System.out.println ( 'สำหรับพวกเขาประกอบด้วย: ' + แผน ) ;
ผลลัพธ์แสดงค่าของค่าคงที่ enum ที่ระบุ:
มาดูกันว่าจะเกิดอะไรขึ้นเมื่อเราเรียกองค์ประกอบที่ไม่มีอยู่ในประเภท enum
ตัวอย่างที่ 2: การเข้าถึงค่าคงที่ Enum ที่ไม่มีอยู่
เราจะพิจารณา enum ที่สร้างขึ้นก่อนหน้านี้ในตัวอย่างนี้และรับค่าคงที่ ' C++ ” ที่ไม่ได้อยู่ใน ProgrammingLanguages enum:
ProgrammingLanguages plang = ProgrammingLanguages.valueOf ( 'ซี++' ) ;System.out.println ( 'สำหรับพวกเขาประกอบด้วย: ' + แผน ) ;
เป็นผลให้คอมไพเลอร์ส่งข้อยกเว้น:
มาดูกันว่าจะเกิดอะไรขึ้นเมื่อเราเรียกค่า null ใน enum
ตัวอย่างที่ 3: การเข้าถึงค่าคงที่ Enum null
เราจะส่งค่า null String ใน “ มูลค่าของ() ' กระบวนการ. นอกจากนี้ยังจะส่งข้อยกเว้นเนื่องจากเราไม่ได้เพิ่มค่าคงที่ null ใน enum ที่สร้างขึ้น:
ProgrammingLanguages plang = ProgrammingLanguages.valueOf ( ' ' ) ;System.out.println ( 'สำหรับพวกเขาประกอบด้วย: ' + แผน ) ;
เอาท์พุต
มาดูวิธีการพิมพ์ค่าคงที่ทั้งหมดของ enum กัน
ตัวอย่างที่ 4: การเข้าถึงค่าคงที่ Enum ทั้งหมดในครั้งเดียว
ในเมธอด main() ของคลาส “ ตัวอย่าง ” เราจะพิมพ์ค่าคงที่ทั้งหมดของ enum โดยใช้ “ ค่า () ” วิธีการใน “ สำหรับ ห่วง. ในการทำเช่นนั้น เราจะใช้ “ ลำดับ () ” วิธีรับค่าคงที่ enum ด้วยดัชนี เช่น ดัชนีอาร์เรย์ สุดท้าย วิธี valueOf() จะพิมพ์ค่าคงที่ทั้งหมดของ enum โดยใช้ “ System.out.println() ' กระบวนการ:
System.out.println ( 'enum 'ProgrammingLanguages' ประกอบด้วย: ' ) ;สำหรับ ( ProgrammingLanguages pl : ProgrammingLanguages.values ( ) ) {
int i = pl.ordinal ( ) + 1 ;
System.out.println ( ฉัน+ ' ' +pl ) ;
}
ผลลัพธ์แสดงค่าคงที่ทั้งหมดของ enum ชื่อ ProgrammingLanguages:
เราครอบคลุมคำแนะนำพื้นฐานทั้งหมดเพื่อใช้เมธอด valueOf() ของคลาส Java Enum
บทสรุป
“ มูลค่าของ() ” ใช้วิธีการเพื่อรับค่าคงที่ของ enum ยอมรับและส่งกลับสตริงเดียวกับที่ใช้ในระหว่างการประกาศค่าคงที่ Enum หากสตริงที่ส่งผ่านไม่ใช่ค่าคงที่ของ enum ก็จะส่งข้อยกเว้น นอกจากนี้ วิธีการนี้คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ ในบทความนี้ เราได้อธิบายการใช้ valueOf() ของวิธีการคลาส Enum พร้อมตัวอย่างโดยละเอียด