List中封装对象多属性排序

更新时间:2023-07-03 10:20:07 阅读: 评论:0

List中封装对象多属性排序对象
学⽣对象 有学⽣id 分数score 年龄age
public class Students {
private int id;
private int score;
private int age;
public Students(int id,int score,int age){
this.id = id;
this.score = score;
this.age = age;
}
public int getId(){
return id;
}
public int getScore(){
return score;
}
public int getAge(){
return age;
挖掘机简笔画
}
@Override
public String toString(){
return"Students{"+
"id="+ id +
", score="+ score +
", age="+ age +
'}';
}
}
⾸先我们创建⼀些实体类放进集合中
1. 分数升序 再年龄升序
Students s3 =new Students(1,100,12);
Students s4 =new Students(2,90,12);
Students s5 =new Students(3,90,13);
Students s6 =new Students(5,80,13);
Students s7 =new Students(7,80,13);
List<Students> list =new ArrayList<>();
list.add(s1);
list.add(s2);
list.add(s3);
list.add(s4);
list.add(s5);
list.add(s6);
list.add(s7);
Comparator<Students> score = paring(Students::getScore);        Comparator<Students> age = paring(Students::getAge);
list.sort(score.thenComparing(age));
LinkedList<Integer> stuId =new LinkedList<>();
for(Students students : list){
stuId.Id());
System.out.println("students = "+ students);
}
高字书法
for(Integer integer : stuId){
System.out.println("integer = "+ integer);
}
}
}
students = Students{id=5, score=80, age=13}
students = Students{id=7, score=80, age=13}
students = Students{id=2, score=90, age=12}
students = Students{id=3, score=90, age=13}
students = Students{id=6, score=100, age=10}
students = Students{id=4, score=100, age=11}
students = Students{id=1, score=100, age=12}
integer =5
慢慢旅游网
integer =7
integer =2
integer =3
integer =6
integer =4
integer =1
2. 分数升序 年龄降序
Students s3 =new Students(1,100,12);
Students s4 =new Students(2,90,12);
Students s5 =new Students(3,90,13);
Students s6 =new Students(5,80,13);
Students s7 =new Students(7,80,13);
List<Students> list =new ArrayList<>();
list.add(s1);
list.add(s2);
list.add(s3);
list.add(s4);
list.add(s5);
list.add(s6);
list.add(s7);
Comparator<Students> score = paring(Students::getScore);
Comparator<Students> age = paring(Students::getAge).reverd();        list.sort(score.thenComparing(age));
LinkedList<Integer> stuId =new LinkedList<>();
for(Students students : list){
stuId.Id());
System.out.println("students = "+ students);
}
for(Integer integer : stuId){
System.out.println("integer = "+ integer);
}
}
}
students = Students{id=5, score=80, age=13}
students = Students{id=7, score=80, age=13}
students = Students{id=3, score=90, age=13}
students = Students{id=2, score=90, age=12}
students = Students{id=1, score=100, age=12}
students = Students{id=4, score=100, age=11}工会管理制度
students = Students{id=6, score=100, age=10}
integer =5
integer =7
integer =3
integer =2
integer =1
integer =4
integer =6
2. 分数降序 年龄降序
Students s3 =new Students(1,100,12);
Students s4 =new Students(2,90,12);
Students s5 =new Students(3,90,13);
Students s6 =new Students(5,80,13);
Students s7 =new Students(7,80,13);
List<Students> list =new ArrayList<>();
list.add(s1);
list.add(s2);
list.add(s3);
list.add(s4);
list.add(s5);
list.add(s6);
list.add(s7);
Comparator<Students> score = paring(Students::getScore).reverd();
Comparator<Students> age = paring(Students::getAge).reverd();
list.sort(score.thenComparing(age));
LinkedList<Integer> stuId =new LinkedList<>();
for(Students students : list){
stuId.Id());
System.out.println("students = "+ students);
}
十八岁的天空2
for(Integer integer : stuId){
System.out.println("integer = "+ integer);
}
}
}
"E:\Java\jdk 1.8\""-javaagent:E:\idea\IntelliJ IDEA 2020.1\lib\idea_rt.jar=60649:E:\idea\IntelliJ IDEA 2020.1\bin"-ding=UTF-8-classpa th "E:\java\jdk 1.8\jre\lib\charts.jar;E:\java\jdk 1.8\jre\lib\deploy.jar;E:\java\jdk 1.8\jre\lib\ext\access-bridge-64.jar;E:\java\jdk 1.8\jre\lib\ext\cldrdata.jar;E:\jav a\jdk 1.8\jre\lib\ext\dnsns.jar;E:\java\jdk 1.8\jre\lib\ext\jaccess.jar;E:\java\jdk 1.8\jre\lib\ext\jfxrt.jar;E:\java\jdk 1.8\jre\lib\ext\localedata.jar;E:\java\jdk 1.8\jre\lib \ext\nashorn.jar;E:\java\jdk 1.8\jre\lib\ext\sunec.jar;E:\java\jdk 1.8\jre\lib\ext\sunjce_provider.jar;E:\java\jdk 1.8\jre\lib\ext\sunmscapi.jar;E:\java\jdk 1.8\jre\lib\ ext\sunpkcs11.jar;E:\java\jdk 1.8\jre\lib\ext\zipfs.jar;E:\java\jdk 1.8\jre\lib\javaws.jar;E:\java\jdk 1.8\jre\lib\jce.jar;E:\java\jdk 1.8\jre\li
b\jfr.jar;E:\java\jdk 1.8\jre\li b\jfxswt.jar;E:\java\jdk 1.8\jre\lib\js.jar;E:\java\jdk 1.8\jre\lib\management-agent.jar;E:\java\jdk 1.8\jre\lib\plugin.jar;E:\java\jdk 1.8\jre\lib\resources.jar;E:\jav a\jdk 1.8\jre\lib\rt.jar;E:\ideaCodeLibrary\TestCode\target\class" MultiConditionSorting
students = Students{id=1, score=100, age=12}
students = Students{id=4, score=100, age=11}
students = Students{id=6, score=100, age=10}
陈思王students = Students{id=3, score=90, age=13}
students = Students{id=2, score=90, age=12}
students = Students{id=5, score=80, age=13}
students = Students{id=7, score=80, age=13}
integer =1
integer =4
integer =6
integer =3
integer =2
integer =5
integer =7
第⼆种点点点写法
import ArrayList;
import Comparator;
import LinkedList;
import List;
/
**
* @Author: jsy
* @Description:
淌的读音国画竹* @Date:Created in 19:03 2021/8/9
*/
public class MultiConditionSorting {
public static void main(String[] args){
Students s1 =new Students(6,100,10);
Students s2 =new Students(4,100,11);
Students s3 =new Students(1,100,12);
Students s4 =new Students(2,90,12);
Students s5 =new Students(3,90,13);
Students s6 =new Students(5,80,13);
Students s7 =new Students(7,80,13);
List<Students> list =new ArrayList<>();
list.add(s1);
list.add(s2);
list.add(s3);
list.add(s4);
list.add(s5);
list.add(s6);
list.add(s7);
/
/        Comparator<Students> score = paring(Students::getScore).reverd(); //        Comparator<Students> age = paring(Students::getAge).reverd();
//        list.sort(score.thenComparing(age));
list.paring(Students::getScore).reverd()
.paring(Students::getAge).reverd()));
LinkedList<Integer> stuId =new LinkedList<>();
for(Students students : list){
stuId.Id());
System.out.println("students = "+ students);
}
for(Integer integer : stuId){
System.out.println("integer = "+ integer);
}
}
}

本文发布于:2023-07-03 10:20:07,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/1075875.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:对象   分数   放进   实体类   年龄   降序   简笔画
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图