首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Java 中的 Comparator 和 Comparable

    前言 上一文简单对 Java 中的Comparator 接口进行了说明,今天我们来看看另一个和它非常类似的接口 java.lang.Comparable 。 2....虽然它也可以看作一个函数式接口,但是 Java 8 中并没有将它标记为函数式接口。说明设计者并不希望开发者将它作为函数式接口来使用。不然就偏离了设计意图,就像下面输入一个字符串返回该字符串的长度。...3.Comparator vs Comparable Comparator 和 Comparable 很相似,但是它们也是有一些不一样的地方的,主要表现在: 视角不同,Comparable 通常是对象自带的比较属性而...Comparator 通常是作为“第三方”来比较。...通常 Comparable需要被对象实现来作为特性使用,而Comparator 更像是策略。 一个位于 java.lang 包下 ,一个在 java.util 下,这从侧面也证明了第一条。 4.

    33210

    java中Comparable和Comparator的区别

    java中Comparable和Comparator的区别 简介 java.lang.Comparable和java.util.Comparator是两个容易混淆的接口,两者都带有比较的意思,那么两个接口到底有什么区别...Comparable Comparable是java.lang包下面的接口,lang包下面可以看做是java的基础语言接口。...这个比较排序之后的order,按照java的说法叫做natural ordering。这个order用在一些可排序的集合比如:SortedSet,SortedMap等等。...Comparator Comparator是一个FunctionalInterface,需要实现compare方法: int compare(T o1, T o2); Comparatorjava.util...Collections.sort(List,Comparator),Arrays.sort(Object[],Comparator) 等这些辅助的方法类都可以通过传入一个Comparator来自定义排序规则

    31220
    领券