Có thể tiết kiệm một phương pháp vào một biến?
Tôi có một lớp được gọi là MyFilter và nó lọc các mục trên các trường khác nhau.
Các constructor của MyFilter nên hỏi 2 điều:Lưu một phương pháp vào một biến, java 8
- String, ví dụ lọc Items theo ngôn ngữ, "tiếng Anh"
- này phải là một phương pháp
ví dụ:
Tôi có một mục và tôi muốn kiểm tra xem chuỗi ngôn ngữ == có được cung cấp cho bộ lọc
Vì vậy, tôi cần có ngôn ngữ của Mục đó, do đó, Item.getLanguage() ...
Tôi cũng cần nó cho Item.getTitle(), Item.getId() và vân vân.
Tôi nghĩ rằng điều này là có thể với lambda nhưng tôi không biết làm thế nào.
Xem Java Reflection: http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Method.html (Methods) và http: // docs .oracle.com/javase/7/docs/api/java/lang/Class.html (Lớp học) – Trinimon
vâng. tất cả lambda trong java là các cá thể lớp bên trong thực tế thực hiện các giao diện tương ứng. bạn khai báo giao diện đó và gán lambda cho nó. – HuStmpHrrr
@HuStmpHrrr - lambdas là các thể hiện của ** giao diện ** chức năng. –