中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

IntelliJ IDEA中Stream Trace功能的示例分析

發布時間:2021-05-19 10:03:34 來源:億速云 閱讀:230 作者:小新 欄目:開發技術

小編給大家分享一下IntelliJ IDEA中Stream Trace功能的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

前言

自從 Java 8 開始,作為程序員的我們都離不開 Stream 相關功能的使用,書寫起來那叫一個流暢(這個 feel~~)。但總是有一些時候,我們對 stream 的操作所要的結果和預期不符,這就需要我們逐步調試,定位問題

常規調試

先來看下面這段代碼:

public static void main(String[] args) {
  Object[] res = Stream.of(1,2,3,4,5,6,7,8).filter( i -> i%2 == 0).filter( i -> i>3).toArray();
  System.out.println(Arrays.toString(res));
}

我們可以在 Stream 操作處打上斷點,逐步查看結果,就像這樣:

IntelliJ IDEA中Stream Trace功能的示例分析

我們需要各種單步調試,不是很直觀,我們迫切的需要個一覽視圖,讓我們快速查看我們的 Stream 結果

可視化調試

同樣先選擇行斷點,以 Debug 模式進入程序:

IntelliJ IDEA中Stream Trace功能的示例分析

接下來會彈出 Stream Trace,整個 Stream 操作盡顯眼前

IntelliJ IDEA中Stream Trace功能的示例分析

同樣可以點擊左下角的 Flat Mode 按鈕,將整個視圖扁平化

IntelliJ IDEA中Stream Trace功能的示例分析

在實際業務中,我們通常對集合進行各種 Stream 操作,我們再來個復雜一些的例子:

List<Optional<Customer>> customers = Arrays.asList(
				Optional.of(new Customer("日拱一兵", 18)),
				Optional.of(new Customer("卑微的小開發", 22)),
				Optional.empty(),
				Optional.of(new Customer("OOT", 21)),
				Optional.empty(),
				Optional.of(new Customer("溫柔一刀", 23)),
				Optional.empty()
		);

		long numberOf65PlusCustomers = customers
				.stream()
				.flatMap(c -> c
						.map(Stream::of)
						.orElseGet(Stream::empty))
				.filter(c -> c.getAge() > 18)
				.count();

		System.out.println(numberOf65PlusCustomers);

同樣按照上面的操作得到可視化 Stream Trace 視圖,直觀了解整個 Stream 流程,查看對象屬性等

IntelliJ IDEA中Stream Trace功能的示例分析

以上是“IntelliJ IDEA中Stream Trace功能的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

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

AI

塔河县| 肃北| 龙井市| 齐齐哈尔市| 台北县| 建宁县| 巴林右旗| 龙海市| 景宁| 眉山市| 彰武县| 安新县| 马山县| 宝应县| 贵阳市| 辉南县| 老河口市| 体育| 滦平县| 台前县| 华池县| 九台市| 嫩江县| 明光市| 荣昌县| 三台县| 广昌县| 颍上县| 吴桥县| 台东市| 景泰县| 汉中市| 济阳县| 石景山区| 子洲县| 古蔺县| 金华市| 海淀区| 两当县| 肥西县| 靖边县|