เห็นว่า 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 กันหน่อย

คำอธิบาย
เห็นครั้งแรกก็ดูดีเลยนะ pattern matching กันมาเลย
นี่มัน scala นิ
Break ก็ไม่ต้องมี
-> คุ้น ๆ มาอีกแล้ว
ที่สำคัญ สั้น กระชับ อ่านง่ายขึ้นไหม

การ compile และ run ทำอย่างไร ?

เนื่องจากยังเป็น preview เท่านั้น
ในการ compile และ run จึงต้องใส่ option ดังนี้

$javac --enable-preview --release 12 DemoSwitch.java
$java --enable-preview  DemoSwitch

เพียงเท่านี้ก็ใช้ได้แล้วครับ
ว่าง ๆ ลองไป download มาเล่นและศึกษากันครับ

Tags:,