• 对List中每个对象元素按时间顺序排序


    需求: 需要对List中的每个User按照birthday顺序排序,时间由小到大排列。

     代码实现:

     1 import java.text.SimpleDateFormat;
     2 import java.util.*;
     3 
     4 public class ListSort {
     5     public static class UserBean {
     6         private String id;
     7         private String birthday;
     8 
     9         public String getId() {
    10             return id;
    11         }
    12 
    13         public void setId(String id) {
    14             this.id = id;
    15         }
    16 
    17         public String getBirthday() {
    18             return birthday;
    19         }
    20 
    21         public void setBirthday(String birthday) {
    22             this.birthday = birthday;
    23         }
    24     }
    25 
    26     public static void main(String[] args) {
    27         List<UserBean> list = new ArrayList<UserBean>();
    28         UserListGenerate(list);
    29         System.out.println("********排序前*******");
           for(UserBean user: list){
            System.out.println(user.getBirthday());  
           }
    30 31 ListSort(list); 32 System.out.println("******排序后*****");
           for(UserBean user: list){
            System.out.println(user.getBirthday());
           }
    33 } 34 35 private static void UserListGenerate(List<UserBean> list) { 36 UserBean user1 = new UserBean(); 37 UserBean user2 = new UserBean(); 38 UserBean user3 = new UserBean(); 39 user1.setId("zhagnsan"); 40 user1.setBirthday("1980-11-01"); 41 42 user2.setId("lisi"); 43 user2.setBirthday("1981-12-01"); 44 45 user3.setId("wangwu"); 46 user3.setBirthday("1980-12-01"); 47 48 list.add(user1); 49 list.add(user2); 50 list.add(user3); 51 } 52 53 private static void ListSort(List<UserBean> list) { 54 Collections.sort(list, new Comparator<UserBean>() { 55 @Override 56 public int compare(UserBean o1, UserBean o2) { 57 SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); 58 try { 59 Date dt1 = format.parse(o1.getBirthday()); 60 Date dt2 = format.parse(o2.getBirthday()); 61 if (dt1.getTime() > dt2.getTime()) { 62 return 1; 63 } else if (dt1.getTime() < dt2.getTime()) { 64 return -1; 65 } else { 66 return 0; 67 } 68 } catch (Exception e) { 69 e.printStackTrace(); 70 } 71 return 0; 72 } 73 }); 74 } 75 }
  • 相关阅读:
    算法作业实验三
    牛客练习赛53 B 美味果冻
    牛客练习赛53 C 富豪凯匹配串
    bitmat
    牛客挑战赛33 B 鸽天的放鸽序列
    树状数组
    线段树
    2019牛客国庆集训派对day7 A 2016
    背包
    作业三 -并查集
  • 原文地址:https://www.cnblogs.com/hunterCecil/p/5556174.html
Copyright © 2020-2023  润新知