www.dbpj.net > JAvA中如何把一组对象按照其某一个属性值进行排序...

JAvA中如何把一组对象按照其某一个属性值进行排序...

很高兴回答你的为问题: 首先,你写个专用的比较器,如下: public class ComparatorImpl implements Comparator { public int compare(Student s1,Student s2) { int age1 = s1.getAge(); int age2 = s2.getAge(); if(age1>age2){ return 1; }e...

if(!s1.name.equals(s2.name)){return s2.name.compareTo(s1.name);}else{//姓名也相同则按学号排序return s2.id-s1.id;}}}};Student stu1 = new Student (1,"zhangsan","male",28,"cs");Student stu2 = new Student (2,"lisi","female",19,"cs"...

Collections.sort(list,new Comparator(){ @Override public int compare(Object o1, Object o2) { return 0;}});

有几个方法可以实现:让 Student 实现Comparable接口,或是实例化一个比较器, 现在用 Comparator 比较器实例来做一个:ComparableTest.java import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; public c...

Student类实现Comparator接口的compareTo(Object)方法。 student implements Comparator { 。。。 int compareTo(Object o) { return (this.grade-((Student)o).grade); } } 具体方法可以参照jdk帮助。

用你的实体类实现Comparable,如果不想改实体类代码,那么写一个比较类实现 Comparator接口。

纠正几点错误: 首先TreeSet就是一个二叉树排序容器,由用户定义对象比较规则,然后接口回调进行排序,也就是说当对象在add到容器后实际上已经按照你定义的排序规则排序完毕了,所以你也没有必要再单独写一个排序方法。 如果你想单独写一个排序...

List logUserList = new ArrayList();//你自己的数据Collections.sort(logUserList, new Comparator() {//根据name排序 public int compare(LogUser o1, LogUser o2) { return o1.getName().compareTo(o2.getName()); }});for(LogUser logUser :...

你的对象要实现Compare接口 class MyBean implements Comparable { private Date sortKey; public Date getSortKey() { return sortKey; } public void setSortKey(Date sortKey) { this.sortKey = sortKey; } @Override public int compareTo(M...

import java.util.Comparator;import java.util.Map;import java.util.Random;import java.util.TreeMap;import java.util.Map.Entry;public class TestSort { public static void main(String[] args) { //必须使用TreeMap(HashMap实现不了此功...

网站地图

All rights reserved Powered by www.dbpj.net

copyright ©right 2010-2021。
www.dbpj.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com