标签:
本文分两部分:
注:这两部分内容均以类+注释的方式进行说明,并且内容均来自官方教程(https://docs.oracle.com/javase/tutorial/java/javaOO/lambdaexpressions.html)。
第一部分:
/** public static void main(String[] args) { interface CheckPerson{ |
第二部分:
假设一种场景:
A正在开发一个社交网络应用,考虑添加一个功能——管理员可以根据用户(Person)的不同特征,执行不同的操作,比如发送信息。
approaches是A写的不同的实现,从a1 ~ a8,看看每个方法较之前有什么明显的提升。
备注:1> Person 社交网络应用用户类 2> PersonGenerator 用户列表模拟产生类
方法一:
/** public static void main(String[] args) { } |
方法二:
/** public static void main(String[] args) {
|
方法三:
/** public static void main(String[] args) { } class SearchPersonsByAage implements CheckPerson { @Override interface CheckPerson { |
方法四:
/** List<Person> persons = PersonGenerator.generatePerons(); } public static void printPerson(List<Person> persons, CheckPerson check) { } interface CheckPerson { |
方法五:
/** public static void main(String[] args) { } interface CheckPerson { |
方法六:
/** public static void main(String[] args) { List<Person> persons = PersonGenerator.generatePerons(); public static void printPerson(List<Person> persons, Predicate<Person> check) {
class Aministrator { interface Predicate<T> { |
方法七:
/** public static void main(String[] args) { List<Person> persons = PersonGenerator.generatePerons(); public static void processPersons(List<Person> persons, Predicate<Person> check, Consumer<Person> block) { interface Predicate<T> { |
方法八:
/** public static void main(String[] args) { List<Person> persons = PersonGenerator.generatePerons(); } }
|
方法九:
/** public static void main(String[] args) { List<Person> persons = PersonGenerator.generatePerons(); } } interface Predicate<T> { |
标签:
原文地址:http://www.cnblogs.com/aking1988/p/4544487.html