您的位置 首页 java

Java,数组和List中的对象排序,一般写法以及简写形式

前言:

每日一点点,先贴代码再说!

代码:

 @Data
@ToString
@AllArgsConstructor
@NoArgsConstructor
static class User {
    private Integer id;
    private String name;
}

public static void main(String[] args) {
    // 构造数组
    User[] userArray = {new User(1, "1"), new User(2, "2")};
    System.out.println(Arrays.toString(userArray));
    // 一般写法
    Arrays.sort(userArray, new Comparator<User>() {
        public int compare(User u1, User u2) {
            if (u1.id < u2.id) {
                return 1;
            } else if (u1.id > u2.id) {
                return -1;
            }
            return 0;
        }
    });
    System.out.println(Arrays.toString(userArray));
    // 简写方式1
    Arrays.sort(userArray, (User u1, User u2) -> {
        return u1.name.compareTo(u2.name);
    });
    System.out.println(Arrays.toString(userArray));
    // 简写方式2
    Arrays.sort(userArray, (a, b) -> {
        return b.name.compareTo(a.name);
    });
    System.out.println(Arrays.toString(userArray));
}  
 @Data
@ToString
@AllArgsConstructor
@NoArgsConstructor
static class User {
    private Integer id;
    private String name;
}

public static void main(String[] args) {
    // 构造List
    List<User> userList = Arrays.asList(new User(1, "1"), new User(2, "2"));
    System.out.println(userList);
    // 一般写法
    Collections.sort(userList, new Comparator<User>() {
        @Override
        public int compare(User u1, User u2) {
            if (u1.id < u2.id) {
                return 1;
            } else if (u1.id > u2.id) {
                return -1;
            }
            return 0;
        }
    });
    System.out.println(userList);
    // 简写方式1
    Collections.sort(userList,(User u1,User u2)->{
        return u1.name.compareTo(u2.name);
    });
    System.out.println(userList);
    // 简写方式2
    Collections.sort(userList,(u1,u2)->{
        return u2.name.compareTo(u1.name);
    });
    System.out.println(userList);
}  

文章来源:智云一二三科技

文章标题:Java,数组和List中的对象排序,一般写法以及简写形式

文章地址:https://www.zhihuclub.com/174267.shtml

关于作者: 智云科技

热门文章

网站地图