亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

對對象流進行排序并首先獲取并打印出來

對對象流進行排序并首先獲取并打印出來

千萬里不及你 2022-10-26 17:24:02
我正在編寫代碼以按年齡對人員列表進行排序,并為最舊的人添加前綴并打印出來定義的對象列表:    Person person1 = new Person(40,"John", "Smith");    Person person2 = new Person(45,"Mike", "Well");    Person person3 = new Person(68,"Bob", "Parks");    Person person4 = new Person(49,"Leon", "Foo");    Person person5 = new Person(30,"Christian", "Markus");    List<Person> personList = new ArrayList<>();    personList.add(person1);    personList.add(person2);    personList.add(person3);    personList.add(person4);    personList.add(person5);我能夠對其進行排序和添加前綴,但問題是獲取第一項并將其打印出來    List<Person> orderedPersonAge  = personList            .stream()            .sorted(Comparator.comparing(Person::getAge).reversed())            .map(s-> new     Person(s.getAge(),"Super"+s.getName(),s.getSureName()))            .collect(Collectors.toList());    System.out.println(orderedPersonAge);我試著玩 findFirst() ...不同的方法是按年齡排序,取最舊的,然后添加前綴......
查看完整描述

2 回答

?
慕慕森

TA貢獻1856條經驗 獲得超17個贊

你可以做

Person orderedPersonAge  = personList
        .stream()
        .sorted(Comparator.comparing(Person::getAge).reversed())
        .map(s-> new Person(s.getAge(),"Super"+s.getName(),s.getSureName()))
        .collect(Collectors.toList())
        .get(0);
        System.out.println(orderedPersonAge);

或者

Person orderedPersonAge  = personList
        .stream()
        .sorted(Comparator.comparing(Person::getAge).reversed())
        .map(s-> new Person(s.getAge(),"Super"+s.getName(),s.getSureName()))
        .findFirst()
        .get();
        System.out.println(orderedPersonAge);


查看完整回答
反對 回復 2022-10-26
?
一只萌萌小番薯

TA貢獻1795條經驗 獲得超7個贊

你可能只是在尋找

personList.stream()
   .max(Comparator.comparing(Person::getAge)) // solves for sort with reverse and find first
   .map(s -> new Person(s.getAge(), "Super" + s.getName(), s.getSurname())) // map if present
   .ifPresent(System.out::println); // print the mapped output if present



查看完整回答
反對 回復 2022-10-26
  • 2 回答
  • 0 關注
  • 122 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號