亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java8的stream怎么取max

發布時間:2023-05-06 11:40:11 來源:億速云 閱讀:138 作者:zzz 欄目:開發技術

這篇文章主要講解了“java8的stream怎么取max”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“java8的stream怎么取max”吧!

java8的stream取max

 public static void main(String[] args) {
        List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6);
        Integer max = list.stream().max((a, b) -> {
            if (a > b) {
                return 1;
            } else return -1;
        }).get();

        System.out.println(max);
    }

注意點:這里判斷大小是通過正負數和0值。 而不是直接寫成

if (a > b) {
return a;
} else return b;

可以簡化寫法

int max = list.stream().max((a, b) -> a > b ? 1 : -1).get();

java8 stream詳解~聚合(max/min/count)

maxmincount這些字眼你一定不陌生,沒錯,在mysql中我們常用它們進行數據統計。

Java stream中也引入了這些概念和用法,極大地方便了我們對集合、數組的數據統計工作。

java8的stream怎么取max

「案例一:獲取String集合中最長的元素。」

public class StreamTest {
 public static void main(String[] args) {
  List<String> list = Arrays.asList("adnm", "admmt", "pot", "xbangd", "weoujgsd");
 
  Optional<String> max = list.stream().max(Comparator.comparing(String::length));
  System.out.println("最長的字符串:" + max.get());
 }
}

「案例二:獲取Integer集合中的最大值。」

public class StreamTest {
 public static void main(String[] args) {
  List<Integer> list = Arrays.asList(7, 6, 9, 4, 11, 6);
 
  // 自然排序
  Optional<Integer> max = list.stream().max(Integer::compareTo);
  // 自定義排序
  Optional<Integer> max2 = list.stream().max(new Comparator<Integer>() {
   @Override
   public int compare(Integer o1, Integer o2) {
    return o1.compareTo(o2);
   }
  });
  System.out.println("自然排序的最大值:" + max.get());
  System.out.println("自定義排序的最大值:" + max2.get());
 }
}

「案例三:獲取員工工資最高的人。」

public class StreamTest {
 public static void main(String[] args) {
  List<Person> personList = new ArrayList<Person>();
  personList.add(new Person("Tom", 8900, 23, "male", "New York"));
  personList.add(new Person("Jack", 7000, 25, "male", "Washington"));
  personList.add(new Person("Lily", 7800, 21, "female", "Washington"));
  personList.add(new Person("Anni", 8200, 24, "female", "New York"));
  personList.add(new Person("Owen", 9500, 25, "male", "New York"));
  personList.add(new Person("Alisa", 7900, 26, "female", "New York"));
 
  Optional<Person> max = personList.stream().max(Comparator.comparingInt(Person::getSalary));
  System.out.println("員工工資最大值:" + max.get().getSalary());
 }
}

「案例四:計算Integer集合中大于6的元素的個數。」

import java.util.Arrays;
import java.util.List;
 
public class StreamTest {
 public static void main(String[] args) {
  List<Integer> list = Arrays.asList(7, 6, 4, 8, 2, 11, 9);
 
  long count = list.stream().filter(x -> x > 6).count();
  System.out.println("list中大于6的元素個數:" + count);
 }
}

感謝各位的閱讀,以上就是“java8的stream怎么取max”的內容了,經過本文的學習后,相信大家對java8的stream怎么取max這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

区。| 屯门区| 兴仁县| 河西区| 永胜县| 淅川县| 壤塘县| 上高县| 宽甸| 五华县| 鄂温| 阳春市| 清水河县| 奉节县| 乐都县| 偃师市| 仁怀市| 新乐市| 辛集市| 额尔古纳市| 北流市| 余庆县| 平远县| 隆回县| 甘泉县| 宝兴县| 洪雅县| 文昌市| 老河口市| 阳新县| 黎川县| 连城县| 铁岭市| 吐鲁番市| 西乡县| 自贡市| 常州市| 中西区| 宁乡县| 迁安市| 丰都县|