真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Java8中Comparator排序方法的實(shí)例使用

本篇內(nèi)容介紹了“Java8中Comparator排序方法的實(shí)例使用”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

成都創(chuàng)新互聯(lián)于2013年成立,先為鹽邊等服務(wù)建站,鹽邊等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為鹽邊企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

Java8 中 Comparator 接口提供了一些靜態(tài)方法,可以方便于我們進(jìn)行排序操作,下面通過例子講解下如何使用

對(duì)整數(shù)列表排序(升序)

List list = Arrays.asList(1, 4, 2, 6, 2, 8);list.sort(Comparator.naturalOrder());System.out.println(list);

對(duì)整數(shù)列表排序(降序)

List list = Arrays.asList(1, 4, 2, 6, 2, 8);list.sort(Comparator.reverseOrder());System.out.println(list);

根據(jù)對(duì)象屬性(年齡)進(jìn)行排序

public class Test {  public static void main(String[] args) {    List personList = new ArrayList<>();    personList.add(new Person("a", 2));    personList.add(new Person("b", 4));    personList.add(new Person("c", 7));    // 升序    personList.sort(Comparator.comparingInt(Person::getAge));    // 降序    personList.sort(Comparator.comparingInt(Person::getAge).reversed());    System.out.println(personList);  }  public static class Person {    private String name;    private Integer age;    public Person(String name, Integer age) {      this.name = name;      this.age = age;    }    public Integer getAge() {      return age;    }        // ... toString 方法  }}

根據(jù)對(duì)象屬性(價(jià)格、速度)進(jìn)行排序,需要注意的是,排序有先后之分,不同的順序會(huì)導(dǎo)致不同的結(jié)果

public class Test {  public static void main(String[] args) {    List list = new ArrayList<>();    list.add(new Computer("xiaomi",4000,6));    list.add(new Computer("sony",5000,4));    list.add(new Computer("dell",4000,5));    list.add(new Computer("mac",6000,8));    list.add(new Computer("micro",5000,6));    // 先以價(jià)格(升序)、后再速度(升序)  list.sort(Comparator.comparingInt(Computer::getPrice).thenComparingInt(Computer::getSpeed));    // 先以速度(降序)、后再價(jià)格(升序)   list.sort(Comparator.comparingInt(Computer::getSpeed).reversed().thenComparingInt(Computer::getPrice));    // 先以價(jià)格(降序)、后再速度(降序)    list.sort(Comparator.comparingInt(Computer::getPrice).thenComparingInt(Computer::getSpeed).reversed());    System.out.println(list);  }  public static class Computer {    private String name;    private Integer price;    private Integer speed;    public Computer(String name, Integer price, Integer speed) {      this.name = name;      this.price = price;      this.speed = speed;    }    public Integer getPrice() {      return price;    }    public void setPrice(Integer price) {      this.price = price;    }    public Integer getSpeed() {      return speed;    }    public void setSpeed(Integer speed) {      this.speed = speed;    }    // ... toString 方法  }}

“Java8中Comparator排序方法的實(shí)例使用”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!


當(dāng)前題目:Java8中Comparator排序方法的實(shí)例使用
文章起源:http://weahome.cn/article/pgssgh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部