A Supplier
คือวิธีการใด ๆ ที่ไม่มีอาร์กิวเมนต์และส่งกลับค่า งานของมันคือการจัดหาตัวอย่างของชั้นเรียนที่คาดหวัง ตัวอย่างเช่นทุกการอ้างอิงถึงเมธอด 'getter' คือไฟล์Supplier
public Integer getCount(){
return this.count;
}
อ้างอิงวิธีการเช่นใช้เป็นตัวอย่างของmyClass::getCount
Supplier<Integer>
A Consumer
คือวิธีการใด ๆ ที่ใช้อาร์กิวเมนต์และไม่ส่งคืนค่าใด ๆ มีการเรียกใช้สำหรับผลข้างเคียง ในแง่ Java a Consumer
เป็นสำนวนสำหรับvoid
วิธีการ วิธีการ 'setter' เป็นตัวอย่างที่ดี:
public void setCount(int count){
this.count = count;
}
อ้างอิงวิธีการเช่นใช้myClass::setCount
เป็นตัวอย่างของและConsumer<Integer>
IntConsumer
A Function<A,B>
คือวิธีการใด ๆ ที่ใช้อาร์กิวเมนต์ประเภทหนึ่งและส่งกลับอีกประเภทหนึ่ง สิ่งนี้สามารถเรียกได้ว่าเป็น 'การเปลี่ยนแปลง' Function<A,B>
ใช้เวลาและผลตอบแทนA
B
สิ่งที่น่าสังเกตคือสำหรับค่าที่กำหนดของA
ฟังก์ชันควรส่งคืนค่าเฉพาะB
เสมอ A
และB
ในความเป็นจริงอาจเป็นประเภทเดียวกันดังต่อไปนี้:
public Integer addTwo(int i){
return i+2;
}
การอ้างอิงวิธีการอินสแตนซ์myClass:addTwo
คือ a Function<Integer, Integer>
และToIntFunction<Integer>
.
การอ้างอิงเมธอดคลาสไปยัง getter เป็นอีกตัวอย่างหนึ่งของฟังก์ชัน
public Integer getCount(){
return this.count;
}
อ้างอิงวิธีการเรียนของตนMyClass::getCount
เป็นตัวอย่างของและFunction<MyClass,Integer>
ToIntFunction<MyClass>
Consumer
และSupplier
คุณยังสามารถค้นหาบทช่วยสอนสำหรับConsumer
...