对list排序

  1. package com.huawei.kong;  
  2.   
  3. import java.util.ArrayList;  
  4. import java.util.Collections;  
  5. import java.util.Comparator;  
  6. import java.util.List;  
  7.   
  8. public class ListSortTest  
  9. {  
  10.   
  11.     /** 
  12.      * @param args 
  13.      */  
  14.     public static void main(String[] args)  
  15.     {  
  16.         List<User> userlist = new ArrayList<User>();  
  17.         userlist.add(new User("dd""4"));  
  18.         userlist.add(new User("aa""1"));  
  19.         userlist.add(new User("ee""5"));  
  20.         userlist.add(new User("bb""2"));  
  21.         userlist.add(new User("ff""5"));  
  22.         userlist.add(new User("cc""3"));  
  23.         userlist.add(new User("gg""6"));  
  24.   
  25.         ComparatorUser comparator = new ComparatorUser();  
  26.         Collections.sort(userlist, comparator);  
  27.   
  28.         for (int i = 0; i < userlist.size(); i++)  
  29.         {  
  30.             User user_temp = (User) userlist.get(i);  
  31.             System.out.println(user_temp.getAge() + "," + user_temp.getName());  
  32.         }  
  33.   
  34.     }  
  35.   
  36. }  
  37.   
  38. class User  
  39. {  
  40.     String name;  
  41.     String age;  
  42.   
  43.     public User(String name, String age)  
  44.     {  
  45.         this.name = name;  
  46.         this.age = age;  
  47.     }  
  48.   
  49.     public String getAge()  
  50.     {  
  51.         return age;  
  52.     }  
  53.   
  54.     public void setAge(String age)  
  55.     {  
  56.         this.age = age;  
  57.     }  
  58.   
  59.     public String getName()  
  60.     {  
  61.         return name;  
  62.     }  
  63.   
  64.     public void setName(String name)  
  65.     {  
  66.         this.name = name;  
  67.     }  
  68. }  
  69.   
  70. class ComparatorUser implements Comparator<User>  
  71. {  
  72.   
  73.     public int compare(User user0, User user1)  
  74.     {  
  75.         // 首先比较年龄,如果年龄相同,则比较名字  
  76.         int flag = user0.getAge().compareTo(user1.getAge());  
  77.         if (flag == 0)  
  78.         {  
  79.             return user0.getName().compareTo(user1.getName());  
  80.         }  
  81.         else  
  82.         {  
  83.             return flag;  
  84.         }  
  85.     }  
  86.   
  87. }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值