当前位置: 首页 > news >正文

德庆网站建设公司洛阳seo博客

德庆网站建设公司,洛阳seo博客,网络舆情的三种分类标准,调用wordpress搜索代码在Java中经常会涉及到对象数组的排序问题#xff0c;那么就涉及到对象之间的比较问题。Java实现对象排序的方式有两种#xff1a; 自然排序#xff1a;java.lang.Comparable定制排序#xff1a;java.util.Comparator 规则#xff1a;需要我们自定义根据对象的某个或某些属…在Java中经常会涉及到对象数组的排序问题那么就涉及到对象之间的比较问题。Java实现对象排序的方式有两种 自然排序java.lang.Comparable定制排序java.util.Comparator 规则需要我们自定义根据对象的某个或某些属性进行排序 1. 方式一实现Comparable接口 步骤 用我们自定义的类A实现Comparable接口重写Comparable接口中的compareTo(Object obj)方法在此方法中声明类A的对象的大小比较规则 重写compareTo(Object obj)方法示例和重写equals()方法思路类似 Overridepublic int compareTo(Object o) {//1.若实参对象和当前对象地址相同则时同一个对象if (o this) {return 0;}//2.若实参对象是当属于当前类或子类实例则强转声明比较规则if (o instanceof A) {// 强转A p (A)o;// 比较规则用参2与参1比较。小于return 负数大于return 整数相等return 0。// 比较规则1这里注意是谁的compare方法int value Double.compare(this.xxx,xxx);// 比较规则2if (value ! 0) {// 从小到大// return value;// 从大到小return -value;}// 若比较规则1的结果相同则使用该规则从从小到大return this.xxx.compareTo(p.xxx);// 从大到小// return -this.xxx.compareTo(p.xxx);}//3.若实参对象不属于当前类则抛出类型异常throw new RuntimeException(类型不匹配);// 使用示例// Arrays.sort(arr实现类对象的实例)}2. 方式二实现Comparator接口 2.1 为什么有了Comparable还需要Comparator 情况1 当我们需要对对象进行排序而对象所在类又没有实现Comparable我们也没法修改所在类代码的情况下使用。情况2 当这个类实现了Comparable接口但是比较规则不满足我们的需求而我们又无法修改其源码的时候使用。 因为以上两种情况的存在我们可以临时的去指定排序方式于是就有了Comparator。 2.2 实现 步骤 在当前类A实现Comparator接口重写compare(Object o1, Object o2)方法在此方法中声明对象的大小比较规则 注意 Comparator的比较规则会覆盖Comparable的比较规则 //1.创建一个实现Comparator接口的实现类对象这里使用了匿名实现类 Comparator comparator new Comparator() {Overridepublic int compare(Object o1, Object o2) {//2.若实参对象是当属于当前类或子类实例则强转声明比较规则if(o1 instanceof A o2 instanceof A){// 强转A p1 (A) o1;A p2 (A) o2;// 比较规则用参2与参1比较。小于return 负数大于return 整数相等return 0。// 从小到大return Double.compareTo(p1.getXxx(),p2.getXxx());// 从大到小//return -Double.compareTo(p1.getXxx(),p2.getXxx());}//3.若实参对象不属于当前类则抛出类型异常throw new RuntimeException(类型不匹配);// 使用示例// Arrays.sort(arr,comparator类A的实例);} }3. Comparable VS Comparator 角度一 自然排序单一唯一一旦指定了比较规则就不能更改定制排序灵活多样创建多个Comparator对象指定不同的比较规则调用不同的对象即可 角度二 自然排序一劳永逸一旦声明好就可以永久使用定制排序在使用的时候才去零时声明 角度三 自然排序实现接口Comparable重写抽象方法compareTo(Object obj)定制排序实现接口Comparator重写抽象方法compare(Object o1, Object o2)
http://www.dnsts.com.cn/news/65248.html

相关文章:

  • 网站集约化建设力度网站建设成本报表
  • 网站架设的结构wordpress 主题放哪
  • 北京智联招聘官方网站做家政最近发生的重大军事新闻
  • 体育用品网站模板公众号编辑器官网
  • 北京教育云平台网站建设付公司制作网站费怎么做凭证
  • 深圳系统开发高端网站建设网站用的空间
  • 福州网站建设 大公司教育网站设计欣赏
  • 戚墅堰做网站价格动漫设计与制作是做什么的
  • 怎么做vip网站杭州房价暴跌已开始
  • 建设英文网站要求保险公司早会新闻资讯
  • 做音频后期的素材网站wordpress维护插件
  • 大型门户网站设计公司安装wordpress教程
  • 淘宝客建站模板白帽seo公司
  • 永安网站制作江苏省住房和城乡建设网站
  • 生成论坛网站微网站的特点
  • iis网站下载各大搜索引擎网站登录入口
  • 商务网站规划与设计做网站用python还是php
  • 招标网站建设申请南京专业做网站的公司
  • 免费自助网站建设陕西汽车网站建设
  • wordpress主题 评论东莞市网络seo推广
  • 导航网站开发工具郑州大旗网站制作公司
  • 安徽省芜湖建设定额网站重庆网站模板建站公司
  • 空压机东莞网站建设网站代运营要多少费用
  • 商洛网站建设求职简历wordpress文字链接去掉下划线
  • 哪些网站可以免费推广做网站建设科技公司
  • 网站建设服务器需要钱吗wordpress模版如何修改底部信息
  • 母婴网站源码php中关村做网站设计的
  • 建设网站需要哪些认证如何做一个个人网页
  • 企业网站建设都需要什么准备集团网站目标
  • 做鞋子出口需要作网站吗云设计工具