Java如何實現(xiàn)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;
}
@Override
public 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());
}
//實現(xiàn)排序
Collections.sort(list, new Comparator<User>() {
@Override
public 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());
}
}
}
運行結(jié)果
排序前: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如何實現(xiàn)List自定義排序的詳細內(nèi)容,更多關(guān)于Java List自定義排序的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Jrebel License Server 激活 IDEA-Jrebel-在線-
這篇文章主要介紹了Jrebel License Server 激活 IDEA-Jrebel-在線-離線-均適用,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12
解決Spring session(redis存儲方式)監(jiān)聽導(dǎo)致創(chuàng)建大量redisMessageListenerConta
這篇文章主要介紹了解決Spring session(redis存儲方式)監(jiān)聽導(dǎo)致創(chuàng)建大量redisMessageListenerContailner-X線程問題,需要的朋友可以參考下2018-08-08
idea?springBoot項目自動注入mapper為空報錯的解決方法
這篇文章主要介紹了idea?springBoot項目自動注入mapper為空報錯的解決方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-03-03
SpringBoot多數(shù)據(jù)源解決方案:dynamic-datasource-spring-boot-starter
本文主要介紹了SpringBoot多數(shù)據(jù)源解決方案,使用dynamic-datasource-spring-boot-starter實現(xiàn),具有一定的參考價值,感興趣的可以了解一下2025-03-03

