- 代码实现
输出结果:package com.yzy.springdemo.property; import org.springframework.core.OrderComparator; import org.springframework.core.Ordered; import java.util.ArrayList; import java.util.List; /** * * @author yzy * @date 2022/11/16 15:01 **/ public class Score implements Ordered { @Override public int getOrder() { return 0; } @Override public String toString() { return this.getClass().getSimpleName() + ",order = " + getOrder(); } } class Score1 implements Ordered { @Override public int getOrder() { return 1; } @Override public String toString() { return this.getClass().getSimpleName() + ",order = " + getOrder(); } } class Score2 implements Ordered { @Override public int getOrder() { return 2; } @Override public String toString() { return this.getClass().getSimpleName() + ",order = " + getOrder(); } public static void main(String[] args) { Score score = new Score(); Score1 score1 = new Score1(); Score2 score2 = new Score2(); OrderComparator comparator = new OrderComparator(); // score1的getOrder 比 score的getOrder大,故这里返回1 System.out.println(comparator.compare(score1, score)); List<Object> list = new ArrayList<>(); list.add(score); list.add(score1); list.add(score2); // 按order值升序排序 list.sort(comparator); System.out.println(list); } }

spring比较器的使用
本文介绍了如何在Spring Boot中使用`Ordered`接口实现自定义排序的Score类,并展示了如何通过OrderComparator进行对象排序。Score1和Score2类分别实现了不同的order值,实例化并演示了它们在列表中的排序过程。

被折叠的 条评论
为什么被折叠?



