Java如何實現List自定義排序
實體類
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自定義排序的資料請關注好吧啦網其它相關文章!
相關文章: