java8 - sort 方法

java8 中 使用sort 排序的列子。
基礎類

@Data
@ToString
public class Persion {
    private String name;
    private Integer age;

    public Persion(String name, Integer age) {
        this.name = name;
        this.age = age;
    }
}

初始化 list

List<Persion> persions = Lists.newArrayList ();
persions.add (new Persion ("lucy",12));
persions.add (new Persion ("river",20));
persions.add (new Persion ("frank",5));

lis t中的數據 按照 persion 的年齡 升序排列

persions.sort(Comparator.comparing(Persion::getAge));
System.out.println(persions);

輸出結果

[Persion(name=frank, age=5), Persion(name=lucy, age=12), Persion(name=river, age=20)]

按照 persion 的年齡降序排列

persions.sort(Comparator.comparing(Persion::getAge).reversed());
System.out.println(persions);

輸出結果

[Persion(name=river, age=20), Persion(name=lucy, age=12), Persion(name=frank, age=5)]

可以自己寫排序的策略

        persions.sort((t1,t2)->{
            if(t1.getAge() > t2.getAge()){
                return -1;
            }
            return 1;
        });

輸出結果

[Persion(name=river, age=20), Persion(name=lucy, age=12), Persion(name=frank, age=5)]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章