国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Java,SpringBoot中對Stream流的運用

這篇具有很好參考價值的文章主要介紹了Java,SpringBoot中對Stream流的運用。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

詳細參考:java 1.8 stream 應用-22種案例_java1.8 流案例-CSDN博客

準備條件

public class Books implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 圖書記錄ID,自增
     */

    private Integer bookId;

    /**
     * 圖書號
     */
    private String bookCode;

    /**
     * 圖書類型
     */
    private String bookType;

    /**
     * 圖書名稱
     */
    private String bookName;

    /**
     * 作者名稱
     */
    private String authorName;

    /**
     * 出版社
     */
    private String publisher;

    /**
     * 總數(shù)量
     */
    private Integer totalQuantity;
}
        List<Books> list = booksMapper.findBooksName(null); // 查詢全部

Stream流對集合的應用

1. 遍歷

List<Books> bookList = // 獲取你的書籍列表

// 使用 Stream API 遍歷列表
bookList.forEach(book -> {
    // 在這里不執(zhí)行其他操作,只是遍歷
    System.out.println(book); // 或者其他你想要的操作
});

?2. 匯總文章來源地址http://www.zghlxwxcb.cn/news/detail-836805.html

List<Books> bookList = // 獲取你的書籍列表

// 1. 過濾(Filtering):保留總數(shù)量大于0的圖書
List<Books> filteredBooks = bookList.stream()
                                   .filter(book -> book.getTotalQuantity() > 0)
                                   .collect(Collectors.toList());

// 2. 映射(Mapping):提取圖書名稱形成新的列表
List<String> bookNames = bookList.stream()
                                .map(Books::getBookName)
                                .collect(Collectors.toList());

// 3. 計數(shù)(Counting):計算圖書總數(shù)
long bookCount = bookList.stream().count();

// 4. 查找(Finding):找到集合中的任意一本圖書
Optional<Books> anyBook = bookList.stream().findAny();
Optional<Books> firstBook = bookList.stream().findFirst();

// 5. 排序(Sorting):按照圖書名稱排序
List<Books> sortedBooks = bookList.stream()
                                 .sorted(Comparator.comparing(Books::getBookName))
                                 .collect(Collectors.toList());

// 6. 分組(Grouping):按照圖書類型分組
Map<String, List<Books>> booksByType = bookList.stream()
                                               .collect(Collectors.groupingBy(Books::getBookType));

// 7. 分區(qū)(Partitioning):將圖書分為數(shù)量大于0和數(shù)量為0的兩部分
Map<Boolean, List<Books>> partitionedBooks = bookList.stream()
                                                    .collect(Collectors.partitioningBy(book -> book.getTotalQuantity() > 8));

?Map集合運用Stream流

import java.util.HashMap;
import java.util.Map;

public class StreamExample {

    public static void main(String[] args) {
        // 創(chuàng)建一個包含學生姓名和對應成績的Map集合
        Map<String, Integer> studentScores = new HashMap<>();
        studentScores.put("Alice", 85);
        studentScores.put("Bob", 92);
        studentScores.put("Charlie", 78);
        studentScores.put("David", 95);
        studentScores.put("Eva", 88);

        // 使用Stream流處理Map集合
        studentScores.entrySet().stream()
                // 過濾出成績大于等于90的學生
                .filter(entry -> entry.getValue() >= 90)
                // 獲取學生姓名并打印
                .map(Map.Entry::getKey)
                .forEach(System.out::println);
    }
}

到了這里,關于Java,SpringBoot中對Stream流的運用的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Java8的Stream流的學習

    Stream可以由數(shù)組或集合創(chuàng)建,對流的操作分為兩種: 中間操作,每次返回一個新的流,可以有多個。 終端操作,每個流只能進行一次終端操作,終端操作結束后流無法再次使用。終端操作會產(chǎn)生一個新的集合或值。 stream和parallelStream的簡單區(qū)分:?stream是順序流,由主線程按

    2024年02月07日
    瀏覽(26)
  • JAVA中對list使用stream對某個字段求和

    對于List對象 或者ListMapString,integer等類型的數(shù)組,如何快速的求出list數(shù)組中某個對象的某個屬性的和,平均數(shù),統(tǒng)計數(shù),最大值,最小值,等: 使用 XXXSummaryStatistics統(tǒng)計類實現(xiàn): 運行結果如下: 相應的還有DoubleSummaryStatistics, LongSummaryStatistics

    2024年02月14日
    瀏覽(95)
  • Java8特性,Stream流的使用,收集成為map集合

    Java 8引入了Stream API,這是Java集合操作的一個重大改進。Stream API提供了一種高效且易于使用的處理數(shù)據(jù)的方式。 Stream是數(shù)據(jù)渠道,用于操作數(shù)據(jù)源(集合、數(shù)組等)所生成的元素序列。注意:Stream自己不會存儲元素,它不會改變源對象,反而它的操作會返回一個全新的Strea

    2024年04月22日
    瀏覽(100)
  • 帶你走進Java8新特性Stream流的小世界

    帶你走進Java8新特性Stream流的小世界

    目錄 一. 什么是流(Stream) 1.1 流的定義 1.2 流的特點 1.3?操作流 1.4 創(chuàng)建流 二. 流的中間操作 2.1 流的篩選與切片 2.1.1 filter 2.1.2 limit 2.1.3 skip 2.1.4 distinct 2.2 流的映射 2.2.1 map 2.2.2 flatMap 2.3 流的排序 2.3.1 sort 三. 流的終止操作 3.1 流的查找與匹配 3.1.1 allMatch 3.1.2 anyMatch 3.1.3 none

    2024年01月24日
    瀏覽(36)
  • java 8 stream流的19種用法,可應對大多數(shù)集合的處理場景

    java 8的Stream API是一種非常強大的集合處理工具,它提供了一種新的、高效的、聲明式的方式來處理集合數(shù)據(jù)。下面我們就來看一下Java 8 Stream API的所有用法。 可以使用Stream.of()方法創(chuàng)建一個Stream: 也可以使用集合的stream()方法創(chuàng)建一個Stream: 可以使用filter()方法過濾Stream中的

    2023年04月08日
    瀏覽(26)
  • java通過stream流的形式把列表中某個字段的值取出并生成列表

    可以使用Java 8中引入的Stream API來實現(xiàn)這一功能。例如,假設你有一個類名為Person的列表,并且你想要從這個列表中提取所有人的姓名并生成一個新的列表。你可以這樣做: 這段代碼首先使用 stream() 方法將列表轉換為流。然后,使用 map() 方法對流中的每個元素執(zhí)行一個轉換函

    2024年02月12日
    瀏覽(24)
  • 深度解析Java JDK 1.8中Stream流的源碼實現(xiàn):帶你探尋數(shù)據(jù)流的奧秘

    深度解析Java JDK 1.8中Stream流的源碼實現(xiàn):帶你探尋數(shù)據(jù)流的奧秘

    1.1 什么是Stream流,以及它的主要特點和優(yōu)勢 什么是Stream流 ? jdk1.8 中引入的Stream流是一種用 函數(shù)式編程方式 操作集合的新特性,提供了一種更簡潔、高效的方式來處理集合數(shù)據(jù),可以將集合操作轉換為一系列的流水線操作,實現(xiàn)更加優(yōu)雅和功能強大的數(shù)據(jù)處理。 主要特點

    2024年03月16日
    瀏覽(36)
  • 由于對象流解析的數(shù)據(jù)與流的頭部信息不匹配導致異常 java.io.StreamCorruptedException: invalid stream header: 7372001

    錯誤原因 先直接說錯誤原因 當使用對象流時,對象頭和對象內容一起被寫入輸出流,而讀取時也需要以相同的順序讀取對象頭和對象內容 如果讀取時的順序與寫入時的順序不一致,或者在寫入或讀取對象頭和對象內容之間更改了流的狀態(tài),則會出現(xiàn) java.io.StreamCorruptedExcept

    2024年02月05日
    瀏覽(29)
  • stream流的collect出現(xiàn)空指針異常

    如果你的stream中存在null元素,而在使用collect方法時沒有對null值進行處理,你可以使用過濾器方法(filter)來過濾掉null元素,或者使用Optional類來處理可能為null的元素。 以下是使用過濾器方法的示例代碼: 這段代碼將會過濾掉list中的null元素,然后將剩余的元素收集到一個

    2024年02月16日
    瀏覽(22)
  • Stream流的中間操作和終端操作

    最近在寫代碼時發(fā)現(xiàn)一個很有意思的問題 問題代碼: 輸出結果: ? 第一個map()方法中沒有使用collect()方法來收集加工后的流,而是直接調用了第二個map()方法。這樣會導致第一個map()方法的結果被丟棄,可為什么第二個map()方法加上forEach會改變原始數(shù)據(jù)呢? 為了弄明白其中緣

    2024年02月16日
    瀏覽(17)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包