java entity 针对某个字段排序

先写个具体的类

public class User {

    private String name;

    private int age;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

}

main方法

import com.spring.entity.User;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

/**
 * @author zhaoYang
 * @Title: springboot-mybatis-redis
 * @Package com.spring.test
 * @date 2018/7/6 11:52
 */
public class ComparatorDemo {
    public static void main(String[] args) {
        List<User> list=new ArrayList<User>();
        User user1=new User();
        user1.setAge(1);
        user1.setName("name1");
        User user2=new User();
        user2.setAge(2);
        user2.setName("name2");
        User user3=new User();
        user3.setAge(3);
        user3.setName("name3");
        list.add(user1);
        list.add(user2);
        list.add(user3);
        // 具体排序实现方法 重写compare方法
        Collections.sort(list, new Comparator<User>() {
            @Override
            public int compare(User o1, User o2) {
                // 根据年龄排序
                // return o1.getAge()-o2.getAge();
                // 根据name的ASCII比较对象
                return o2.getName().compareTo(o1.getName());
            }
        });

        System.out.println(list.get(0).getName()+" "+list.get(1).getName()+" "+list.get(2).getName());
    }

}

猜你喜欢

转载自blog.csdn.net/chineseyoung/article/details/80941195