您的位置:首页技术文章
文章详情页

Java如何实现List自定义排序

浏览:2日期:2022-08-25 10:21:18

实体类

package com.whty.entity;public class User {private int id;private String name;private int age;public User(int id, String name, int age) {super();this.id = id;this.name = name;this.age = age;}public int getId() {return id;}public void setId(int id) {this.id = id;}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;}@Overridepublic String toString() {return 'User [id=' + id + ', name=' + name + ', age=' + age + ']';}}

测试类

package com.whty.test;import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.List;import com.whty.entity.User;public class Test {public static void main(String[] args) {List<User> list = new ArrayList<>();list.add(new User(1, 'java', 20));list.add(new User(2, 'spark', 19));list.add(new User(3, 'hive', 21));for(User user :list) {System.out.println('排序前:' + user.toString());}//实现排序Collections.sort(list, new Comparator<User>() {@Overridepublic int compare(User u1, User u2) {if(u1.getAge() > u2.getAge()) {//return -1:即为正序排序return -1;}else if (u1.getAge() == u2.getAge()) {return 0;}else {//return 1: 即为倒序排序return 1;}}});for(User user :list) {System.out.println('排序后:' + user.toString());}}}

运行结果

排序前:User [id=1, name=java, age=20]排序前:User [id=2, name=spark, age=19]排序前:User [id=3, name=hive, age=21]排序后:User [id=3, name=hive, age=21]排序后:User [id=1, name=java, age=20]排序后:User [id=2, name=spark, age=19]

以上就是Java如何实现List自定义排序的详细内容,更多关于Java List自定义排序的资料请关注好吧啦网其它相关文章!

标签: Java
相关文章: