Java8對List集合對象某個字段進行排序


一、准備工作

  1、聲明一個對象

class User{
        private Integer userId;
        private String userName;
 
        public Integer getUserId() {
            return userId;
        }
 
        public void setUserId(Integer userId) {
            this.userId = userId;
        }
 
        public String getUserName() {
            return userName;
        }
 
        public void setUserName(String userName) {
            this.userName = userName;
        }
 
        public User(Integer userId, String userName) {
            this.userId = userId;
            this.userName = userName;
        }
 
        public User() {
        }
 
        @Override
        public String toString() {
            return "User{" +
                    "userId=" + userId +
                    ", userName='" + userName + '\'' +
                    '}';
        }
    }

二、開始測試

  1、測試代碼

@Test
    public void lambdaTest1(){
        List<User> list = new ArrayList<>();
        list.add(new User(1,"張三"));
        list.add(new User(4,"趙六"));
        list.add(new User(2,"李四"));
        list.add(new User(3,"王五"));
            
        //條件刪除
        list.removeIf(user -> user.getUserId() == 3);
        System.out.println("--------------排序前");
        list.forEach(user -> {
            System.out.println(user);
        });
        list.sort((user1,user2)->user1.getUserId() - user2.getUserId());
        System.out.println("_-------------------正序排序后");
        list.forEach(user -> {
            System.out.println(user);
        });
 
        System.out.println("--------------------倒序排序后:");
        list.sort((((o1, o2) -> o2.getUserId() - o1.getUserId())));
        list.forEach(user -> {
            System.out.println(user);
        });
    }

  2、輸出結果

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM