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

自己做网站要不要钱/广州推广服务

自己做网站要不要钱,广州推广服务,在家做的手工活哪里有网站,专做毕业设计的网站在进行软件构造实验三的过程中,遇到了对List集合按照对象的某一属性排序的问题,我们知道,在一般的情况下,java中提供了对集合进行操作的工具类Collections, Collections能够对集合中的元素用默认的排序方法sort来根据元…

在进行软件构造实验三的过程中,遇到了对List集合按照对象的某一属性排序的问题,我们知道,在一般的情况下,java中提供了对集合进行操作的工具类Collections,
Collections能够对集合中的元素用默认的排序方法sort来根据元素的自然顺序对指定集合按升序进行排序。

  1. 对于常用的java自带的类:
    在java中,很多类自己实现好了Comparable接口,并且重写了comepareTo方法,所以我们可以直接调用方法就可以实现排序。我们拿Integer类来举例子:
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;public class Test{public static void main(String[] args) {//创建List<Integer> list = new ArrayList<Integer>();list.add(9);list.add(2);list.add(5);list.add(1);System.out.println(list);//排序Collections.sort(list);System.out.println(list);}
}

输出结果

 [9 2 5 1][1 2 5 9]

2.对于自定义的类,按照类中某种属性就行排序,有两种方法:
方法一:
  在我们自定义的类实现Comparable接口,并在类中重写public int compareTo(T o)方法。我们这个例子中对Entity集合按照Entuty里面的的age进行排序如下所示:

public class Test 
{public static void main(String[] args) {ArrayList<Entity> list=new ArrayList<Entity>();list.add(new Entity("余涛",24));list.add(new Entity("王宁",13));list.add(new Entity("崔同发",25));System.out.println("排序前:"+list);Collections.sort(list);System.out.println("排序后:"+list);}
}
class Entity implements Comparable<Entity>
{String name;int age;public Entity(String name, int age) {super();this.name = name;this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}@Overridepublic String toString() {return "Entity [name=" + name + ", age=" + age + "]";}@Overridepublic int compareTo(Entity o) {if(this.getAge()>o.getAge()){return 1;}else if(this.getAge()<o.getAge()){return -1;}else{return 0;}}
}

为了对Entity这个类按照age的属性值从小到大排序,则让Entity这个类实现Comparable接口,并编写public int compareTo(Entity o) 方法。这样使用Collections.sort(list);就可以对list中的对象进行按照age大小排序。
根据>和<的情况返回的是1还是-1可以实现从大到小排序或者从小到大排序。
输出结果:

排序前:[Entity [name=余涛, age=24], Entity [name=王宁, age=13], Entity [name=崔同发, age=25]]
排序后:[Entity [name=王宁, age=13], Entity [name=余涛, age=24], Entity [name=崔同发, age=25]]

方法二:
在排序的时候,给sort()方法传入一个比较器。传入一个实现比较器接口的匿名内部类,告诉sort()方法按照比较器来对list中的对象进行排序。如下所示:

public class Test 
{public static void main(String[] args) {ArrayList<Entity> list=new ArrayList<Entity>();list.add(new Entity("余涛",24));list.add(new Entity("王宁",13));list.add(new Entity("崔同发",25));System.out.println("排序前:"+list);Collections.sort(list,new Comparator<Entity>() {@Overridepublic int compare(Entity o1, Entity o2) {if(o1.getAge()>o2.getAge()){return 1;}else if(o1.getAge()<o2.getAge()){return -1;}else{return 0;}}});System.out.println("排序后:"+list);}
}
class Entity
{String name;int age;public Entity(String name, int age) {super();this.name = name;this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}@Overridepublic String toString() {return "Entity [name=" + name + ", age=" + age + "]";}
}

输出结果:

排序前:[Entity [name=余涛, age=24], Entity [name=王宁, age=13], Entity [name=崔同发, age=25]]
排序后:[Entity [name=王宁, age=13], Entity [name=余涛, age=24], Entity [name=崔同发, age=25]]

以上便是对List集合按照对象的某一属性排序的方法。
参考文章

http://www.jmfq.cn/news/4804489.html

相关文章:

  • 动态网站开发代码/百度如何搜索关键词
  • 网站的ftp怎么登陆/湖南seo快速排名
  • 广西网站建设/品牌宣传文案范文
  • 找人建设一个网站多少钱/新东方培训机构官网
  • 上海招聘网站建设/搜索引擎关键词怎么优化
  • 宝安做网站公司/邢台网站公司
  • 济南 域名注册 网站建设/百度登陆
  • 网站空间pdf下载不了/手机优化器
  • 网站外链坏处/seo的培训课程
  • 英文网站设计哪里好/建立网站
  • 免费企业网站怎么做/湖南网站设计外包费用
  • 北京模板建站哪家好/地推项目发布平台
  • 从信息化建设办公室网站/深圳网络营销推广专员
  • 猪八戒网做网站如何/搜索优化是什么意思
  • 网站企业备案资料/手机怎么自己制作网页
  • 想找人做网站 要怎么选择/推广游戏赚钱的平台
  • 网站建设大学/企业推广语
  • 深圳专门做网站/360渠道推广系统
  • 怎么在网上做装修网站/免费网站推广网址
  • dz论坛做分类网站/企业网站建设方案策划
  • 网页传奇哪个最好玩/沧州seo公司
  • 国外无版权图片网站/谷歌浏览器安卓下载
  • 真人做视频网站/慈溪seo排名
  • 东莞企慕网站建设/百度天眼查
  • 做网站策划案/seo软件简单易排名稳定
  • wordpress会员点数/西安专业seo
  • 推荐做微商海报的网站/网络推广主要工作内容
  • 设计公司网站首页显示/福州seo兼职
  • 怎样做网站推广/东莞seo建站
  • 室内设计说明500字简约/搜索引擎快速优化排名