เมื่อเราใช้นิพจน์แลมบ์ดา การดำเนินการที่พบบ่อยที่สุดคือการจับคู่ อย่างไรก็ตาม มีหลายวิธีในอินเทอร์เฟซ และเพื่อนบางคนอาจสับสนเมื่อจับคู่ สิ่งที่เราทำให้ชัดเจนได้ก็คือ lambda สามารถจับคู่อินเทอร์เฟซได้ ดังนั้นคำแนะนำในการจับคู่เฉพาะเจาะจงจะอธิบายไว้ด้านล่าง พร้อมด้วยโค้ดตัวอย่างที่เกี่ยวข้อง
1. คำอธิบาย
(1) แลมบ์ดาแต่ละตัวสามารถจับคู่ประเภทที่กำหนดผ่านอินเทอร์เฟซเฉพาะ อินเทอร์เฟซที่เรียกว่าฟังก์ชันจะต้องมีการประกาศวิธีนามธรรมเพียงรายการเดียวเท่านั้น แต่ละนิพจน์แลมบ์ดาที่สอดคล้องกันจะต้องตรงกับการประกาศของวิธีนามธรรม เนื่องจากวิธีการเริ่มต้นไม่ใช่นามธรรม คุณสามารถเพิ่มวิธีการเริ่มต้นให้กับอินเทอร์เฟซการทำงานของคุณได้
(2) อินเทอร์เฟซใดๆ ที่มีวิธีนามธรรมเพียงวิธีเดียวสามารถใช้สำหรับนิพจน์แลมบ์ดาได้ เพื่อให้อินเทอร์เฟซที่กำหนดเป็นไปตามข้อกำหนด อินเทอร์เฟซควรมีเครื่องหมาย @FunctionalInterface หากมีการกำหนดวิธีนามธรรมที่สองในอินเทอร์เฟซ คอมไพลเลอร์จะสังเกตเห็นคำอธิบายประกอบนี้และส่งข้อยกเว้น
2. ตัวอย่าง
@ฟังก์ชั่นอินเตอร์เฟซ ตัวแปลงอินเทอร์เฟซ<F, T> { T แปลง(F จาก); - ตัวแปลง<String, Integer> ตัวแปลง = (จาก) -> Integer.valueOf(จาก); แปลงจำนวนเต็ม = converter.convert("123"); System.out.println (แปลงแล้ว); // 123
โปรดทราบว่าโปรแกรมยังถูกต้องหากไม่ได้เขียนคำอธิบายประกอบ @FunctionalInterface
ข้างต้นเป็นวิธีการจับคู่นิพจน์ Lambda ในอินเทอร์เฟซ Java ฉันเชื่อว่าทุกคนมีความเข้าใจใหม่เกี่ยวกับการใช้นิพจน์ Lambda ในบทความนี้ โปรดฝึกฝนโดยเร็วที่สุดหลังจากเรียนรู้