日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java8 大到小排序,屌炸天,JDK8的排序大法!!

發布時間:2024/4/18 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java8 大到小排序,屌炸天,JDK8的排序大法!! 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天總結了下JDK中排序的方法,包括JDK8中強大的lambda表達式及函數式接口運用,不廢話,請看下面示例。

public class Test {

public static void main(String\[\] args) {

List list = initList();

// jdk8之前的排序

Collections.sort(list, new?Comparator() {

@Override

public int compare(User o1, User o2) {

return o1.getAge().compareTo(o2.getAge());

}

});

// jdk8 lambda排序,帶參數類型

list = initList();

list.sort((User u1, User u2) -> u1.getAge().compareTo(u2.getAge()));

list.forEach(System.out::println);

System.out.println();

// jdk8 lambda排序,不帶參數類型

list = initList();

list.sort((u1, u2) -> u1.getAge().compareTo(u2.getAge()));

list.forEach(System.out::println);

System.out.println();

// jdk8 排序,User類靜態方法引用

list = initList();

list.sort(User::compareAge);

list.forEach(System.out::println);

System.out.println();

// jdk8 升序排序,Comparator提供的靜態方法

list = initList();

Collections.sort(list, Comparator.comparing(User::getAge));

list.forEach(System.out::println);

System.out.println();

// jdk8 降序排序,Comparator提供的靜態方法

list = initList();

Collections.sort(list, Comparator.comparing(User::getAge).reversed());

list.forEach(System.out::println);

System.out.println();

// jdk8 組合排序,Comparator提供的靜態方法,先按年紀排序,年紀相同的按名稱排序

list = initList();

Collections.sort(list, Comparator.comparing(User::getAge).thenComparing(User::getName));

list.forEach(System.out::println);

}

private static List initList() {

List list = new ArrayList<>();

list.add(new User("lisa", 23));

list.add(new User("tom", 11));

list.add(new User("john", 16));

list.add(new User("jennis", 26));

list.add(new User("tin", 26));

list.add(new User("army", 26));

list.add(new User("mack", 19));

list.add(new User("jobs", 65));

return list;

}

}

看完有沒有覺得很驚艷,簡直屌炸天,Lumbda表達式+函數式接口還有更多強大的應用下回再做個專題介紹。

推薦去我的博客:

覺得不錯,別忘了點贊+轉發哦!

總結

以上是生活随笔為你收集整理的java8 大到小排序,屌炸天,JDK8的排序大法!!的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。