lambdas优于匿名类的主要优点是它们更简洁。Java提供了一种生成函数对象的方法,它比lambdas更简洁:方法引用。这是一个程序的代码片段,它维护从任意key到Integer值的映射。如果该值被解释为key实例数的计数,则该程序是多集实现。代码段的功能是将数字1与key相关联(如果它不在映射中),并在key已存在时增加相关值:
map.merge(key, 1, (count, incr) -> count + incr);
请注意,此代码使用merge方法,该方法已添加到Java 8中的Map接口。如果给定键key没有映射,则该方法只是插入给定的值; 如果已存在映射,则merge将给定的函数应用于当前值和给