Comparable接口和Comparator接口的区别

news/2024/10/22 10:43:32/
  1. Comparable接口位于java.lang包下;Comparator位于java.util包下
  2. Comparable接口只提供了一个compareTo()方法;Comparator接口不仅提供了compara()方法,还提供了其他默认方法,如reversed()、thenComparing(),使我们可以按照更多的方式进行排序
  3. 如果要用Comparable接口,则必须实现这个接口,并重写comparaTo()方法;但是Comparator接口可以在类外部使用,通过将该接口的一个匿名类对象当做参数传递给Collections.sort()方法或者Arrays.sort()方法实现排序。
  4. Comparator体现了一种策略模式,即可以不用要把比较方法嵌入到类中,而是可以单独在类外部使用,这样我们就可有不用改变类本身的代码而实现对类对象进行排序。
  5. 通常 Comparable需要被对象实现来作为特性使用,而Comparator 更像是策略。

http://www.ppmy.cn/news/729460.html

相关文章

学计算机和学电子方面的区别,电脑和计算机的区别 是什么?

原标题:电脑和计算机的区别 是什么? 没有区别,计算机俗称电脑,是现代一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能。是能够按照程序运行&#xff0…

如何区别电脑上的USB接口

今天,给同学传东西,不是一般的快,我就查看了一下他的U盘,是3.0的。突然想起,我记得我的电脑有USB2.0、USB3.0和USB3.1,但是,我一直都不知道它们哪一个是,所以我就试着去区别的了一下…

服务器和电脑的区别

什么是服务器 顾名思义就是提供服务的机器,我们平时使用的APP,网页等都需要向后端服务器发送数据,然后在后端的服务器内进行处理,再返回你想要的信息,所以服务器是网络的节点,储存和处理网络上80%的数据信…

计算机硬件和软件之间的区别

💂 个人网站:【海拥】【摸鱼游戏】【神级源码资源网】🤟 前端学习课程:👉【28个案例趣学前端】【400个JS面试题】💅 想寻找共同学习交流、摸鱼划水的小伙伴,请点击【摸鱼学习交流群】 计算机硬件&#xff1…

【算法】最长递增子序列:动态规划贪心+二分查找

文章目录 最长递增子序列解法一:动态规划解法二:LIS 和 LCS 的关系解法三:贪心 二分查找 相关题目673. 最长递增子序列的个数 https://leetcode.cn/problems/number-of-longest-increasing-subsequence/1964. 找出到每个位置为止最长的有效障…

VIM编辑器常用快捷键

前提说明: ,代表输入后可等待如g,g代表连续输入两个g中间可停留; |代表或,即多种快捷键均可实现; 快捷键之间可以自己尝试进行组合,说不定就可以!!! 光标移动 快捷键…

应用商店上架被拒解决办法

App Store上架被拒解决办法 很多开发者在开发完项目,发布应用市场的过程中面临着审核被拒的问题。如果说一开始就能规避这些问题,那么对项目的规划、运营、推广将会产生极大有效的推进。 本篇文章主要描述是针对上架App Store所常见的一些被拒原因以…

和宝贝教师版v1.1.4官方iPhone版

和宝贝教师版v1.1.4官方iPhone版 版本:1.1.4 大小:19.1MB软件语言:简体中文 软件类型:生活服务软件授权:免费版 系统要求:iOS7.0 软件简介 和宝贝教师版app是一款专为教师打造的应用,和宝贝教…