List<Object>使用Object的某个属性进行排序(正序,倒序)

来源:互联网 发布:矩阵式led大灯有必要吗 编辑:程序博客网 时间:2024/06/06 00:01
package com.test;public class User {private String name;private Integer orderNo;public String getName() {return name;}public void setName(String name) {this.name = name;}public Integer getOrderNo() {return orderNo;}public void setOrderNo(Integer orderNo) {this.orderNo = orderNo;}}


对List<User>进行排序:

package com.test;import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.List;public class Test {public static void main(String[] args) {User user1 =new User();user1.setName("c");user1.setOrderNo(3);User user2 =new User();user2.setName("c");user2.setOrderNo(1);User user3 =new User();user3.setName("b");user3.setOrderNo(2);                List<User> list = new ArrayList<User>();list.add(user1);list.add(user2);list.add(user3);Collections.sort(list,new Comparator<User>(){public int compare(User arg0, User arg1){return arg1.getOrderNo().compareTo(arg0.getOrderNo());}});//倒序结果:/*c:3b:2c:1*/for(User u:list){System.out.println(u.getName()+":"+u.getOrderNo());}//正序结果/*c:1b:2c:3*/Collections.sort(list,new Comparator<User>(){public int compare(User arg0, User arg1){return arg0.getOrderNo().compareTo(arg1.getOrderNo());}});for(User u:list){System.out.println(u.getName()+":"+u.getOrderNo());}}}

阅读全文
1 0
原创粉丝点击