Lambda dapat digunakan bersama fitur generics, dimana deklarasi parameter generics dideklarasikan pada functional interface. Catatan singkat berikut merupakan catatan mengenai bagaimana lambda digunakan sebagai generic untuk pemrosesan array, dalam hal ini untuk mengetahui panjang array.
Berikut adalah functional interface yang di dalam deklarasinya terdapat generics, untuk menerima masukan tipe data array yang akan dirposes.
@FunctionalInterface interface ArrayProcessor<T>{ public int processArray(T[] t); }
Program utama berisi deklarasi array dan ekspresi lambda untuk memproses array tersebut :
String stringArray[] = {"fatma","zaid"}; ArrayProcessor<String> ap = (String[] s)-> s.length; System.out.println(ap.processArray(stringArray));
Kode selengkapnya :
@FunctionalInterface interface ArrayProcessor<T>{ public int processArray(T[] t); } public class LambdaGeneric { public static void main(String[] args) { //FS 1 ArrayProcessor<String> ap = (String[] s)-> s.length; String stringArray[] = {"fatma","zaid"}; System.out.println(ap.processArray(stringArray)); } }
–end of note–