Java函数式接口的一个疑惑:为什么Comparator接口有两个抽象方法compare和equals,Comparator还是一个函数式接口?

java
Author

dd21

Published

December 5, 2022

在这里插入图片描述 ## TreeSet的lambda写法个人理解

TreeSet<String> treeSet = new TreeSet((o1,o2)->((String) o1).compareTo((String) o2) );

TreeSet提供的构造器

这么多的构造器lambda怎么确定是Compartor的呢 一个一个点进去看,会发现只有Compartor是函数是接口 在这里插入图片描述 点击到Compartor中发现,里面有很多方法啊,为什么就是函数式接口了呢 在这里插入图片描述 有两个抽象方法,查资料才发现,equals是Object类的方法,这里不属于Compartor,所以最后定位到了compare了