Java 8 java.time.temporal TemporalAdjusters และ Stream.flatMap() บทช่วยสอน

เผยแพร่แล้ว: 2020-09-09
Java 8 java.time.temporal.TemporalAdjusters และ Stream.flatMap() บทช่วยสอน

เกือบ 2 ปีแล้วที่ Java 8 เปิดตัวในเดือนมีนาคม 2014 ฉันแน่ใจว่าบริษัทส่วนใหญ่ยังคงใช้ Java 7 กับ Apache Tomcat ในสภาพแวดล้อมการใช้งานจริง แต่เมื่อเร็ว ๆ นี้ก็มีโมเมนตัมเพิ่มขึ้นบ้าง

เนื่องจากบริษัทส่วนใหญ่ยังคงใช้ Java 7 อยู่ จึงมีคุณสมบัติบางอย่างที่โลกไม่สังเกตเห็น

เมื่อก่อนเราได้เขียนบทความโดยละเอียดเกี่ยวกับ Java 8 Stream API และ Lambda Expression ในบทช่วยสอนนี้ เราจะพูดถึง java.time.temporal.TemporalAdjusters และ flatMap()

วัตถุชั่วขณะ

tempoalObjects ใน Java คืออะไร? เป็นอินเทอร์เฟซระดับเฟรมเวิร์กที่เกี่ยวข้องกับออบเจ็กต์วันที่และเวลา ซึ่งส่วนใหญ่เป็นออบเจ็กต์ read-only objects ที่ให้การเข้าถึงใน generic manner

ตัวปรับเวลา

TemporalAdjusters เป็นเครื่องมือสำคัญสำหรับการปรับเปลี่ยนวัตถุชั่วคราว คุณสามารถใช้ TemporalAdjuster ได้สองวิธี

  1. เรียกใช้เมธอดบนอินเทอร์เฟซโดยตรง
  2. ใช้ Temporal.with (TemporalAdjuster)
อินเทอร์เฟซสาธารณะ TemporalAdjuster ตัวอย่าง - Crunchify

Stream.flatMap()

map Java และ flatMap สามารถใช้กับ Stream<T> และทั้งคู่ส่งคืน Stream<R> อะไรคือความแตกต่าง?

  • การทำงาน map สร้างค่าเอาต์พุตหนึ่งค่าสำหรับแต่ละค่าอินพุต
  • การดำเนินการ flatMap สร้างค่าตัวเลขที่กำหนดเอง (ศูนย์หรือมากกว่า) สำหรับแต่ละค่าอินพุต

มาเริ่มกันเลยกับบทช่วยสอน

  • สร้างคลาส CrunchifyJava8TemporalAdjustersAndFlatMap.java
  • เราจะสร้างสองวิธีง่ายๆ
    • crunchifyStreamFlatMapExample
    • กระทืบTemporalตัวอย่าง
  • รายละเอียดทั้งหมดมีให้ในแต่ละวิธีตามความคิดเห็น
  • เรียกใช้โปรแกรมและผลการชำระเงิน
  • ตรวจสอบให้แน่ใจว่าคุณได้ตั้งค่า JDK 8 ในสภาพแวดล้อม Eclipse

CrunchifyJava8TemporalAdjustersAndFlatMap.java

เอาท์พุท:

นี่คือผลลัพธ์ของคอนโซล เพียงเรียกใช้โปรแกรม Java ด้านบนและคุณจะเห็นผลลัพธ์ดังนี้

แจ้งให้เราทราบหากคุณประสบปัญหาในการใช้งานโปรแกรมข้างต้น