参数传递的一个问题

来源:4-1 方法引用

BaYongaWamba

2019-12-06 16:52

Collections.sort(personList, Person::compareByAge)第二个参数需要一个Comparator接口,为什么可以传Person::compareByAge这样一个方法进去呢?

写回答 关注

1回答

  • null1184
    2019-12-08 18:22:43

    这个是lambda表达式静态方法引用。Comparator接口里的抽象方法需要一个将两个参数相减得到的int返回值,而在Person类里已经将这个两个参数相减封装在一个静态方法里,所以只需要传入Person::compareByAge就代表已经得到相减的结果

一课掌握Lambda表达式语法及应用

深入浅出,快速掌握Lambda表达式“如何用”“怎么用”

6618 学习 · 58 问题

查看课程

相似问题