เห็นว่า JDK 12 เพิ่งปล่อยออกมาตามสัญญาคือ ทุก ๆ 6 เดือน
เลยลองดูหน่อยว่า มี feature อะไรที่น่าสนใจสำหรับนักพัฒนากันบ้าง ?
พอไปดูก็ไม่รู้เรื่องสิครับ อะไรก็ไม่รู้
- 189: Shenandoah: A Low-Pause-Time Garbage Collector (Experimental)
- 230: Microbenchmark Suite
- 325: Switch Expressions (Preview)
- 334: JVM Constants API
- 340: One AArch64 Port, Not Two
- 341: Default CDS Archives
- 344: Abortable Mixed Collections for G1
- 346: Promptly Return Unused Committed Memory from G1
แต่ตัวที่พอจะรู้เรื่องหน่อยคือ Switch Expressions (Preview)
ดังนั้นมาดูกันหน่อยว่ามันคืออะไร
พอเข้าไปดูก็พบว่า มันคือ Swich-case ตามชื่อนั่นเอง
แต่มันทำให้ชีวิตนักพัฒนาง่ายขึ้นมา
ด้วยการนำ Pattern Matching มาใช้งานใน Switch statement นั่นเอง
แต่เป็น feature ที่อยู่ในการ preview นะ
นั่นหมายความว่าอาจจะเอาออก แก้ไขได้ต่อไปในอนาคต
มาดูตัวอย่าง code กันหน่อย
[gist id="10b0e665fb51585b6257e3b829b38ff4" file="DemoSwitch.java"]
คำอธิบาย
เห็นครั้งแรกก็ดูดีเลยนะ pattern matching กันมาเลย
นี่มัน scala นิ
Break ก็ไม่ต้องมี
-> คุ้น ๆ มาอีกแล้ว
ที่สำคัญ สั้น กระชับ อ่านง่ายขึ้นไหม
การ compile และ run ทำอย่างไร ?
เนื่องจากยังเป็น preview เท่านั้น
ในการ compile และ run จึงต้องใส่ option ดังนี้
เพียงเท่านี้ก็ใช้ได้แล้วครับ
ว่าง ๆ ลองไป download มาเล่นและศึกษากันครับ