List排序

import java.util.ArrayList;
002 import java.util.Collections;
003 import java.util.Comparator;
004 import java.util.List;
005 import java.util.Random;
006  
007 /**
008  *
009  * @author www.zuidaima.com
010  *
011  */
012 public class ListSort {
013  
014     public static void main(String[] args) {
015         List<User> users = new ArrayList<User>();
016         int id = 0;
017         User user = null;
018  
019         Random random = new Random();
020  
021         id = random.nextInt(100000);
022         user = new User(id);
023         user.setId(id);
024         users.add(user);
025  
026         id = random.nextInt(100000);
027         user = new User(id);
028         user.setId(id);
029         users.add(user);
030  
031         id = random.nextInt(100000);
032         user = new User(id);
033         user.setId(id);
034         users.add(user);
035  
036         id = random.nextInt(100000);
037         user = new User(id);
038         user.setId(id);
039         users.add(user);
040  
041         id = random.nextInt(100000);
042         user = new User(id);
043         user.setId(id);
044         users.add(user);
045  
046         id = random.nextInt(100000);
047         user = new User(id);
048         user.setId(id);
049         users.add(user);
050  
051         id = random.nextInt(100000);
052         user = new User(id);
053         user.setId(id);
054         users.add(user);
055  
056         id = random.nextInt(100000);
057         user = new User(id);
058         user.setId(id);
059         users.add(user);
060  
061         id = random.nextInt(100000);
062         user = new User(id);
063         user.setId(id);
064         users.add(user);
065  
066         System.out.println("Before sort:");
067         for (User _user : users) {
068             System.out.print(_user + " ");
069         }
070  
071         Collections.sort(users, new Comparator<User>() {
072             @Override
073             public int compare(User user1, User user2) {
074                 Integer id1 = user1.getId();
075                 Integer id2 = user2.getId();
076                                   //可以按User对象的其他属性排序,只要属性支持compareTo方法
077                 return id2.compareTo(id1);
078             }
079         });
080         System.out.println("\nAfter sort 从大到小倒序:");
081         for (User _user : users) {
082             System.out.print(_user + " ");
083         }
084          
085         Collections.sort(users, new Comparator<User>() {
086             @Override
087             public int compare(User user1, User user2) {
088                 Integer id1 = user1.getId();
089                 Integer id2 = user2.getId();
090                                 //可以按User对象的其他属性排序,只要属性支持compareTo方法
091                 return id1.compareTo(id2);
092             }
093         });
094         System.out.println("\nAfter sort 从小到大正序:");
095         for (User _user : users) {
096             System.out.print(_user + " ");
097         }
098     }
099  
100 }
101  
102 class User {
103     private int id;
104  
105     public User(int id) {
106         this.id = id;
107     }
108  
109     public int getId() {
110         return id;
111     }
112  
113     public void setId(int id) {
114         this.id = id;
115     }
116  
117     @Override
118     public String toString() {
119         return id + "";
120     }
121 }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值