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

020网站开发物流发货平台

020网站开发,物流发货平台,苏宁易购网站建设的不足之处,东莞黄页电话Comparator 和 Comparable 相同点 Comparator 和 Comparable都是java的接口#xff0c;并且是用来对自定义的class比较大小的。 对于自定义类如#xff1a;public class Person{ String name; int age }.   当我们有这么一个personList#xff0c;里面包含了person1, pe…Comparator 和 Comparable 相同点 Comparator 和 Comparable都是java的接口并且是用来对自定义的class比较大小的。 对于自定义类如public class Person{ String name; int age }.   当我们有这么一个personList里面包含了person1, person2, persion3……我们用Collections.sort( personList )是得不到预期的结果的。这时肯定有人要问那为什么可以排序一个字符串list呢如 StringList{“hello1” , “hello3” , “hello2”} Collections.sort( stringList ) 能够得到正确的排序那是因为String 这个对象已经帮我们实现了 Comparable接口 , 所以Person 如果想排序, 也要实现一个比较器。 Comparator 和 Comparable 的区别 Comparable   对于Comparable接口来说它往往是进行比较类需要实现的接口。 该比较器仅包含一个有compareTo()方法只有一个参数返回值为int。返回值大于0表示对象大于参数对象小于0表示对象小于参数对象等于0表示两者相等。 Comparable 实现在 Person类的内部 public class Persion implements Comparable {…compareTo() 比较Person的大小…}   因为已经实现了比较器那么Person现在是一个可以比较大小的对象了它的比较功能和String完全一样可以随时随地的拿来比较大小因为Person现在自身就是有大小之分的。Collections.sort(personList)可以得到正确的结果。 Comparator   对于Comparator接口来说它的实现者被称为比较器它包含一个compare()方法有两个参数返回值与Comparable的compareTo()方法一样不同之处是Comparator接口一般不会被集合元素类所实现而是单独实现或者匿名内部类方式实现。 Comparator 实现在Person的外部此时Person类的结构不需要有任何变化如 public class Person{ String name; int age }   然后另外定义一个比较器类 public PersonComparator implements Comparator {…compare() 比较Person的大小…}   在PersonComparator里面实现了怎么比较两个Person的大小。 所以用这种方法当要对一个 personList进行排序的时候除了要传递personList过去还需要把PersonComparator传递过去因为怎么比较Person的大小是在PersonComparator里面实现的如Collections.sort( personList , new PersonComparator() ) import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.List; public class CompareTest { public static void main(String[] args) { ListStudent list new ArrayListStudent(10); list.add(new Student(1,jj)); list.add(new Student(0,ww)); list.add(new Student(0,kk)); list.add(new Student(2,ll)); Collections.sort(list); // 内部比较器:要排序的类实现Comparable接口,可以对自身进行比较 System.out.println(list); ListTeacher t new ArrayListTeacher(10); t.add(new Teacher(1,12)); t.add(new Teacher(0,13)); t.add(new Teacher(0,14)); t.add(new Teacher(2,15)); Collections.sort(t,new StudentComparator()); //外部比较器:通过额外的类来实现Comparator接口 System.out.println(t); } } class Student implements Comparable { int num; String name; public Student(int num, String name) { this.num num; this.name name; } Override public String toString() { return \r\tnum:num name:name\r; } public int compareTo(Object o) { Student tmp (Student) o; int result tmp.num num ? 1 : (tmp.numnum ? 0 : -1); if (result 0) { result tmp.name.indexOf(0) name.indexOf(0) ? 1 : -1; } return result; } } class Teacher{ int num; double salary; public Teacher(int num, double salary) { this.num num; this.salary salary; } Override public String toString() { return \r\tnum:num salary:salary\r; } } class StudentComparator implements Comparator{ public int compare(Object o1, Object o2) { Teacher t1 (Teacher) o1; Teacher t2 (Teacher) o2; int result t1.num t2.num ? 1 : (t1.num t2.num ? 0 : -1); return result result 0 ?(t1.salaryt2.salary ? 1 : -1) : result; } }
http://www.yutouwan.com/news/497504/

相关文章:

  • 楚雄市住房和城乡建设局门户网站wordpress+vps+配置
  • 网站建设开源wordpress sql语句
  • 网站seo方案撰写软环境建设办公室网站
  • 做软件需要网站申请免费网站空间
  • 国外优秀人像摄影网站网站建设杭州滨江
  • 手机端网站建设的费用清单东莞网络推广
  • 北京网站优化软件公司湖南建设网塔吊证查询
  • 返利网站程序哪些网站做物流推广比较好
  • 互联网网站开发html5企业营销策划及推广
  • 被墙网站查询企业网站制作比较好的
  • 怎么做整人网站wordpress怎么设置后台权限
  • 金山专业做网站交易网站怎么做
  • 做网站怎样上传文件西海岸建设局网站
  • 怎么做淘宝联盟网站ks数据分析神器
  • 国外室内设计网站推荐宝塔做的网站怎么就可以进去了
  • app开发制作平台网站建设wordpress模板页面怎么添加图片
  • 建一个免费网站郑州响应式网站
  • 网站首页结构图wordpress重复链接
  • 网站建设包括哪些方面cad培训班一般学费多少钱
  • 山东聊城网站建设易捷商城小程序
  • 谁做网站做的比较可信哪个网站可以做字体
  • 叫别人做网站要多久外贸公司销售渠道
  • 做网站和微信公众号如何招生专业进出口贸易网站
  • 宇宙设计网站推荐seo公司怎么样
  • 建设工程竣工验收消防备案网站网站域名备案需要什么
  • 参考文献网站开发南宁品牌网站设计公司
  • 站内免费推广有哪些公司网站一般是怎么做
  • 大连三丰建设集团公司网站网站建制作
  • 莞城做网站公司吉林省建设监理检测网站
  • 怎么做网站链接苏州市住建局官网