Tag: optional

7 รายการ

Blog

นากกายยืนแยกสองทาง มีกล่องพัสดุกับทางว่าง
javaoptionalnull-safety

Java Optional.ifPresentOrElse: แยกทางมีค่ากับไม่มีค่าให้ชัด

ใช้ ifPresentOrElse ทำ side-effect สองทางโดยไม่ต้อง if (opt.isPresent()) แล้ว get()

น้องกาย
นากต้นฉบับรับของจากรางหลัก ส่วนประตูคลังสำรองเปิดเฉพาะเมื่อรางหลักว่าง
javaoptionallazy

Java Optional.orElseGet: เรียก fallback เฉพาะตอนค่าหลักหาย

เปรียบเทียบ orElseGet กับ fallback ที่มีต้นทุนหรือ side effect พร้อม Java 17 assertions ตรวจ lazy evaluation

พี่โชว์
ท่อสามท่อนบนโต๊ะมิ้นต์ กรองแล้วแปลงค่า มีจุดอำพันที่ช่องว่าง
javaoptionalnull-safety

Java Optional: ใช้ filter+map เป็นท่อ แทน if ซ้อน

สอนสั้น ๆ — แปลงค่าที่อาจว่างด้วย Optional.filter และ map ให้โค้ดอ่านเป็นเส้นตรง พร้อมตัวอย่างรันได้

น้องกาย
นากต้นฉบับตรวจกล่องแรกที่ว่างก่อนดึงคันเปิดตู้สำรองซึ่งมีของอยู่
javaoptionallazy

Java Optional.or: ต่อ Fallback แบบ Lazy โดยไม่แกะ Optional กลางทาง

ใช้ Optional.or จัดลำดับ cache, database และ default supplier พร้อมพิสูจน์ว่า fallback ไม่ถูกเรียกเมื่อมีค่าหลัก

พี่โชว์
กล่อง Optional เปิดมีติ๊กเขียว และกล่องว่างมีเครื่องหมายตกใจสีอำพัน
javaoptionalerror-handling

Java Optional.orElseThrow: บังคับมีค่าที่ขอบเขตแทนคืน null

ใช้ orElseThrow เมื่อค่าต้องมีจริง พร้อมแยกจาก orElse และตัวอย่างรันจริง

น้องกาย
นากกายต้นฉบับกำลังเทกล่องบางใบที่มีเมล็ดและบางใบว่างลงรางสีเขียวเส้นเดียว
javaoptionalstreams

Java Optional.stream: แบนค่าที่อาจหายโดยไม่แตก pipeline เป็น if

ใช้ Optional.stream รวมผล lookup หลายรายการเป็น Stream เดียว พร้อมรักษาความหมายของค่าที่ไม่พบ

พี่โชว์
นากกายสีมิ้นต์กำลังเปิดกล่องสำรองเฉพาะเมื่อกล่องหลักว่างบนโต๊ะสว่าง
javaoptionalperformance

Java Optional: orElse สร้างค่าทิ้งได้ ส่วน orElseGet ทำเมื่อจำเป็น

เห็นผลของ eager กับ lazy fallback ชัด ๆ พร้อม assertion ที่กัน side effect เกิดทั้งที่มีค่าอยู่แล้ว

พี่โชว์