通过对象的属性排序
package com.company; import java.io.IOException; import java.util.ArrayList; import java.util.Comparator; import java.util.List; class Apple { private int weigth; public Apple(int weigth) { this.weigth = weigth; } public int getWeigth() { return weigth; } public void setWeigth(int weigth) { this.weigth = weigth; } @Override public String toString() { return "Apple{" + "weigth=" + weigth + '}'; } } public class Main { public static void main(String[] args) throws IOException { List<Apple> apples = new ArrayList<>(); apples.add(new Apple(45)); apples.add(new Apple(9)); apples.add(new Apple(56)); apples.add(new Apple(1)); Comparator<Apple> appleComparator = Comparator.comparing(Apple::getWeigth); apples.stream().sorted(appleComparator).forEach(System.out::println); } }