compare()与compareTo()

本文详细介绍了Java中compareTo()方法的作用,它是Comparable接口的一部分,用于对象的自然排序。当需要对对象进行排序时,需实现Comparable接口并重写compare()方法。此外,文章还讨论了compare()方法,它是Comparator接口的一部分,适用于没有内置比较能力的对象。通过Comparator可以创建自定义比较器,实现排序。文中提到了通过匿名内部类和Lambda表达式重写Comparator的方法。
摘要由CSDN通过智能技术生成

compareTo()

  • 是java.lang.Comparable接口中的方法,当需要对某个类的对象进行排序时,该类需要实现Comparable接口的,必须重写public int compare()方法

  • 该方法用于两个相同数据类型的比较,两个不同类型的数据不能用此方法来比较,compareTO底层是compare()方法

  • 强行将实现它的每一个类的对象进行整体排序(称为该类的自然排序),实现此接口的对象列表和数组可以用Collections.sort(),和Arrays.sort()进行自动排序

      例如arrayList排序时 
      Collections.sort(list) 会自动调用User实现的Comparable的compareTo()方法
      	
      Comparator comparator = new Comparator() { 
      @Override 
      public int compare(User user0, User user1) { 
      return user0.id.compareTo(user1.id); 
      } 
      }; 
      Collections.sort(list, comparator)//也可以重新实现排序的方法
    

使用

public int compareTo( NumberSubClass referenceName )
  • 参数
    referenceName – 可以是一个 Byte, Double, Integer, Float, Long 或 Short 类型的参数。
  • 返回值
    如果指
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值