IDEA如何调试Stream API

news2024/11/24 12:37:57

Stream API现在在实际开发中应用非常广泛,经常会遇到需要调试Stream API的场景,这篇文章主要讲解如何使用IDEA调试Stream

@Test
   public void test(){
      Stream.of(10, 20, 30, 40, 50).mapToInt(e->e*10)
                                             .filter(e->e>200)
                                                .forEach(System.out::println);
   }

调试代码如上所示,这里简单的创建一个Stream,调用mapToInt对每个元素乘以10,然后通过filter过滤出结果大于200的打印出来,这个操作非常简单,本文主要讲解如何调试

如上图所示,先在第一行 打断点,然后点击debugRun,进入调试模式,此时点击图中红框所示的"Trace Current Stream Chain"按钮,出现下图:

 会显示出Stream接口的全部操作,点击mapToInt,出现下图,得到mapToInt的结果

 点击filter,出现下图,得到filter的结果

 或者直接点击左下角的Flat Mode,出现下图,直接显示mapToInt,filter的结果

 到此Stream API的调试讲解完成。

接下来讲解下 Optional 链式调用的调试方式

   @Test
   public void test1(){
      String str = Optional.of("hello,world")
              .map(e->e+"hi")
              .map(e->e+"debug")
              .map(e->e+"test").get();
      System.out.println(str);
   }

调试代码如上图所示,在第一行,打上断点,debug运行,如图:

 发现"Trace Current Stream Chain"按钮是灰色的,不可点击,此时可以如图所示

 选择:

Optional.of("hello,world")
              .map(e->e+"hi")
              .map(e->e+"debug")
              .map(e->e+"test")

 点击右键,选择Evaluate Expression

 在接下来的弹窗点击Evaluate,即可得到计算的结果

 这个Evaluate Expression可以在调试过程中,选择任意需要调试的代码,执行得到结果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/857211.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

docker基本使用方法

docker使用 1. Docker 介绍 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。Docker 使您能够将应用程序与基础架构分开,从而可以快速交付软件。通过利用 …

Blockchain投资:是否是实现财务自由的捷径?

随着Blockchain技术的不断发展和应用,越来越多的人开始探索Blockchain投资的机会。Blockchain作为一种分布式记账技术,以其去中心化、透明性和安全性等特点,吸引了众多投资者的关注。但是,Blockchain投资是否真的可以成为实现财务…

unity 修改默认脚本

using System.Collections; using System.Collections.Generic; using UnityEngine; //***************************************** //创建人: xxxx //功能说明: //***************************************** #ROOTNAMESPACEBEGIN# public class #SCRI…

0基础学习VR全景平台篇 第82篇:智慧眼-角色是什么?如何运用呢?

一、功能说明 角色是指城市运营工作开展时所需要设定的成员职称或者人物定位,如管理员、督察员、镇街主管、镇接干事、网格员等等。 后台编辑界面 点击【新增】,填写角色的名称,若有上级,还需选择对应的父级角色。如管理员为最…

Python(七十五)集合的生成式

❤️ 专栏简介:本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中,我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。 ☀️ 专栏适用人群 :本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无…

山东布谷科技直播软件源码探索高效、稳定直播传输的技术介绍:流媒体传输技术

今天我们探索的是让直播软件源码平台在直播时能够高效、稳定的进行直播传输的技术,而这个技术就是直播软件源码平台的流媒体传输技术,在直播软件源码平台中,流媒体传输技术会将直播的图像、视频、音频等相关的流媒体信号通过网络传递到用户的…

SQL-每日一题【1251. 平均售价】

题目 Table: Prices Table: UnitsSold 编写SQL查询以查找每种产品的平均售价。average_price 应该四舍五入到小数点后两位。 查询结果格式如下例所示: 解题思路 1.题目要求查询每种产品的平均售价。给出了两个表,我们用聚合查询来解决此问题。 2.首先我…

从 OBJ 到 FBX:图扑新一代飞机模型、动画、漫游

相信大多数图扑 HT 用户都曾见过这个飞机的 Demo,在图扑发展的这十年,这个 Demo 是许多学习 HT 用户一定会参考的经典 Demo 之一。 这个 Demo 用简洁的代码生动地展示了 OBJ 模型加载、数据绑定、动画和漫游等功能的实现。许多用户参考这个简单的 Demo 后…

通过Shinami快速使用赞助交易(Gas代付)

Web3中对钱包和tokens的要求对于新用户来说是最大的挑战。Sui上的赞助交易不仅为用户提供丝滑的体验,还为构建者开辟了更多的收入模式。 按需付费的区块链模型直接支持网络基础设施,但对于那些已经习惯了Web2世界中看似免费服务的用户来说,这…

{errcode“:-106,“errmsg“:“token check fail“} 微信公众号测试号接口配置报错Django版

准备写个公众号做消息提醒的工具,,于是去了微信公众平台,准备用测试号接口试试。代码写的没问题,服务器也是已经部署了的。基本上所有问题都排查了还是显示配置失败。最后发现是请求头的问题 先列举一下需要注意的问题&#xff0…

自媒体行业深度解析:挖掘收入潜力,洞察未来趋势

随着社交网络和移动互联网的快速发展,自媒体行业成为了越来越多人的职业选择。那么,自媒体行业到底怎么样?自媒体人的收入和前景如何?本文将为大家带来一些关于自媒体行业的介绍和分析。 一、自媒体的定义 自媒体是指个人或组织利…

【ES】笔记-箭头函数的实践于应用场景

箭头函数的实践于应用场景 需求-1 点击 div 2s后颜色变成[粉色]从数组中返回偶数的元素 需求-1 点击 div 2s后颜色变成[粉色] html <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport…

论文解读《Adversarial training methods for semi-supervised text classification》

1 背景 1.1 对抗性实例&#xff08;Adversarial examples&#xff09; 通过对输入进行小扰动创建的实例&#xff0c;可显著增加机器学习模型所引起的损失对抗性实例的存在暴露了机器学习模型的脆弱性和局限性&#xff0c;也对安全敏感的应用场景带来了潜在的威胁&#xff1b;…

前端开发的工作职责精选【10篇】

前端开发的工作职责1 1、使用Divcss并结合Javascript负责产品的前端开发和页面制作; 2、熟悉W3C标准和各主流浏览器在前端开发中的差异&#xff0c;能熟练运用DIVCSS&#xff0c;提供针对不同浏览器的前端页面解决方案; 3、负责相关产品的需求以及前端程序的实现&#xff0c…

IDEA 配置 eslint

第一步 第二步 然后就去试一下啦&#xff0c;理论上到这一步就没问题了&#xff0c;有问题在留言吧。

超低延时直播技术的前世今生

作者&#xff1a;李晨光、匡建鑫、陈鉴平 卷首语&#xff1a; 据中国互联网络信息中心发布的《中国互联网络发展状况统计报告》显示&#xff0c;截止到 2022 年 6 月我国网络直播用户规模达到了 7.16 亿&#xff0c;占网民整体的 68.1% 。最主要原因是 2020 年度疫情期间导致居…

C++入门(小白篇2-标识符定义-关键词-变量类型)

前言 在上一节课中&#xff0c;我们学习到C软件的安装&#xff0c;也知道C运行的各种软件&#xff0c;以及运行第一个程序 今天我们来学习一下 1、C中标识符(变量)的命名规则 2、认识C中的关键词 3、认识C中的数据类型 每天学一点&#xff0c;不要太多不然脑子装不下&#xff0…

vscode终端背景颜色修改以及报错信息颜色修改

引言 刚从pycharm转到vscode上时&#xff0c;很不喜欢vscode终端信息一片白色&#xff0c;于是想尽办法去修改vscode终端风格 这里提供vscode终端背景颜色的修改和vscode终端报错提示信息颜色的修改方法 (1)vscode终端背景颜色优化 步骤一&#xff0c;ctrlshiftp打开设置搜索…

【python 深度学习】解决遇到的问题

目录 一、RuntimeError: module compiled against API version 0xc but this version of numpy is 0xb 二、AttributeError: module ‘tensorflow’ has no attribute ‘flags’ 三、conda 更新 Please update conda by running 四、to search for alternate channels that…

项目启动会为什么很重要? 要确定哪些事宜?

项目启动会议及事项安排 1、领导致辞 2、项目目标 3、项目范围及关键交付物 4、项目里程碑 5、项目组织架构及人员工作安排 6、项目管理机制 7、联系人列表 8、Q&A 进主页获取更多资料