【实现Compareble接口,自定义排序.】-实体类实现Comparable接口
//用户对象
public class UserPOJO implements Comparable {private String name;
private int age;
@Override
public int compareTo(UserPOJO o) {
return o.getAge()-this.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;
}}
- 使用Collections的sort()方法排序
public class Test {
public static void main(String[] args) {UserPOJO u1 = new UserPOJO();
UserPOJO u2 = new UserPOJO();
UserPOJO u3 = new UserPOJO();
u1.setAge(2);
u1.setName("小二");
u2.setAge(3);
u2.setName("小三");
u3.setAge(1);
u3.setName("小一");
List list = new ArrayList<>();
list.add(u1);
list.add(u2);
list.add(u3);
Collections.sort(list);
for (UserPOJO u : list) {
System.out.println(u.getAge());
//System.out.println(u.getName());
}
}
}
- 打印结果
按姓名排序:
小三
小二
小一
按年龄排序:
3
2
1
推荐阅读
- Java|Java基础——数组
- 人工智能|干货!人体姿态估计与运动预测
- java简介|Java是什么(Java能用来干什么?)
- Java|规范的打印日志
- Linux|109 个实用 shell 脚本
- 程序员|【高级Java架构师系统学习】毕业一年萌新的Java大厂面经,最新整理
- Spring注解驱动第十讲--@Autowired使用
- SqlServer|sql server的UPDLOCK、HOLDLOCK试验
- jvm|【JVM】JVM08(java内存模型解析[JMM])
- 技术|为参加2021年蓝桥杯Java软件开发大学B组细心整理常见基础知识、搜索和常用算法解析例题(持续更新...)