亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    java使用lambda表達式對List對象集合的某個屬性進行排序

    java使用lambda表達式對List對象集合的某個屬性進行排序

    這里新建一個UserInfo對象,用來測試lambda表達式排序,屬性如下:

    public class UserInfo {     private int id;     private int age;     private String name;      public UserInfo(int id, int age, String name) {         this.id = id;         this.age = age;         this.name = name;     }      public int getId() {         return id;     }      public void setId(int id) {         this.id = id;     }      public int getAge() {         return age;     }      public void setAge(int age) {         this.age = age;     }      public String getName() {         return name;     }測試      public void setName(String name) {         this.name = name;     }

    相關(guān)視頻教程推薦:java學(xué)習(xí)

    開始造數(shù)據(jù),測試下按照年齡大小正序排序:

     public static void main(String[] args) {         UserInfo user1 = new UserInfo(1, 20, "趙");         UserInfo user2 = new UserInfo(2, 25, "錢");         UserInfo user3 = new UserInfo(3, 23, "孫");         UserInfo user4 = new UserInfo(7, 16, "李");         UserInfo user5 = new UserInfo(6, 19, "周");         UserInfo user6 = new UserInfo(5, 12, "吳");         List<UserInfo> userInfoList = new ArrayList<>();         userInfoList.add(user2);         userInfoList.add(user1);         userInfoList.add(user3);         userInfoList.add(user4);         userInfoList.add(user5);         userInfoList.add(user6);         //使用lambda表達式對age大小正序排序         userInfoList = userInfoList.stream().sorted(Comparator.comparing(UserInfo::getAge))         .collect(Collectors.toList());         for (UserInfo userInfo : userInfoList) {             System.out.println(userInfo.toString());         }     }

    輸出結(jié)果如下:

    java使用lambda表達式對List對象集合的某個屬性進行排序

    測試按照年齡大小倒序排序:

    public static void main(String[] args) {         UserInfo user1 = new UserInfo(1, 20, "趙");         UserInfo user2 = new UserInfo(2, 25, "錢");         UserInfo user3 = new UserInfo(3, 23, "孫");         UserInfo user4 = new UserInfo(7, 16, "李");         UserInfo user5 = new UserInfo(6, 19, "周");         UserInfo user6 = new UserInfo(5, 12, "吳");         List<UserInfo> userInfoList = new ArrayList<>();         userInfoList.add(user2);         userInfoList.add(user1);         userInfoList.add(user3);         userInfoList.add(user4);         userInfoList.add(user5);         userInfoList.add(user6);            //使用lambda表達式對age大小倒序排序,發(fā)現(xiàn)就是多加了個reversed()方法         userInfoList = userInfoList.stream().sorted(Comparator.comparing(UserInfo::getAge).         reversed()).collect(Collectors.toList());         for (UserInfo userInfo : userInfoList) {             System.out.println(userInfo.toString());         }     }

    輸出結(jié)果如下:

    java使用lambda表達式對List對象集合的某個屬性進行排序

    總結(jié)下排序使用方法:

    1、按照某個字段正序排序:

    userInfoList.stream().sorted(Comparator.comparing(UserInfo::getAge)).collect(Collectors.toList());

    2、按照某個字段倒序排序:

    userInfoList.stream().sorted(Comparator.comparing(UserInfo::getAge).reversed()).collect(Collectors.toList());

    以上各種參數(shù)根據(jù)自己業(yè)務(wù)對號入座即可。

    相關(guān)文章教程推薦:java入門學(xué)習(xí)

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號