新版jdk的peek坑
发表于|更新于
|浏览量:
旅游是获得愉悦感和浪漫性的最好媒介——麦金托什
代码如下:
1 | import java.util.Arrays; |
这段代码在java8中则会如下输出

但在java11的时候却只会输出最终的一次count,这说明count并不会导致peek执行

javadoc也写了

所以升级jdk版本的话需要注意这一点
相关推荐
2025-12-22
adk-java
时间,每天得到的都是二十四小时,可是一天的时间给勤勉的人带来智慧和力量,给懒散的人只留下一片悔恨。——鲁迅 ADK for Java 深度上手:用“代码优先”的方式,构建、评估与部署可控的智能 Agent 仓库:google/adk-java官网文档:ADK Docs · 示例仓库:adk-samples · Python 版本:adk-python描述:An open-source, code-first Java toolkit for building, evaluating, and deploying sophisticated AI agents with flexibility and control.许可证:Apache 2.0(详见仓库 LICENSE)适用人群:希望以“工程化、版本化、可调试”的方式,把智能 Agent 跑在本地或云端、并与 Google Cloud 深度集成的 Java 开发者与团队 为什么是 ADK(Agent Development Kit)for Java?来自 README 的核心定位: 代码优先(Code-Fir...
2022-04-21
在SpringBoot单元测试中添加参数
我的肩上是风,风上是闪烁的星群。——北岛《结局或开始·献给遇罗克》 当时是解决一个issue而去查阅的 https://github.com/baomidou/mybatis-plus/issues/4417 最后代码如下: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566package com.ruben.mybatisplusissue;import javax.annotation.Resource;import org.junit.jupiter.api.Test;import org.junit.jupiter.api.extension.ExtendWith;import org.springframework.boot.SpringApplication;import org.springframework.boot.test.context.SpringBootCo...
2024-05-11
jackson序列化时带上类型信息
独学而无友,则孤陋而寡闻。——刘向 首先这么配置即可: 1234objectMapper.activateDefaultTyping(LaissezFaireSubTypeValidator.instance,ObjectMapper.DefaultTyping.NON_FINAL, JsonTypeInfo.As.PROPERTY); 假设我们有两个类 Foo 和 Bar,其中 Bar 是 Foo 的子类。未配置 activateDefaultTyping 之前和配置之后,序列化这些对象的 JSON 表示会有所不同。 类定义 1234567public class Foo { public String value = "A Foo";}public class Bar extends Foo { public String barValue = "A Bar";} 配置前 在不使用 activateDefaultTyping 的情况下,序列化 Foo 类型和 Bar 类型的对象...
2021-11-07
逻辑删除与联合索引冲突处理(二)
一星陨落,黯淡不了星空灿烂;一花凋零,荒芜不了整个春天。——巴尔扎克 之前写过一篇,用时间实现,今天提供另一种思路 我们的逻辑删除字段,如果和联合唯一索引同时使用,还可以使用下面这一种方式: 如果未删除,使用魔法值 如果已删除,使用NULL 因为mybatisPlus官方文档也提到了: 字段类型支持说明: 支持所有数据类型(推荐使用 Integer,Boolean,LocalDateTime) 如果数据库字段使用datetime,逻辑未删除值和已删除值支持配置为字符串null,另一个值支持配置为函数来获取值如now() 之前看源码,发现它也是使用替换字符串的方式去做,所以是支持NULL的 并且我们的null并不受唯一索引约束 那我们这里就可以直接使用如下配置: 12@TableLogic(delval = StringPool.NULL, value = "existed") private String delFlag; 效果: 删除时效果:
2020-12-04
解决lambda中必须为final的方式
一个真正而且热切地工作的人总是有希望的——只有怠惰才是永恒的绝望。——卡莱尔 在开发中使用lambda经常出现一个问题 编译提示我们lambda中使用的变量必须为final或者effectively final 1234567891011int i = 2;BigDecimal j = BigDecimal.ZERO;j = BigDecimal.TEN;List<String> stringList = mpUserMapper.selectList(Wrappers.lambdaQuery()).stream().map(UserDataObject::getUsername).collect(Collectors.toList());stringList = stringList.stream().distinct().collect(Collectors.toList());List<String> strings = new ArrayList<>(10);strings.stream().peek(s -> {...
2023-10-01
webclient远程调用
无论谁想获得自己的名声,都应该隐藏起他的自负。——斯威夫特 我们在webflux场景下可以使用webclient 依赖就包含在了webflux中 1234<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-webflux</artifactId></dependency> 这里使用的话: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768import cn.dev33.satoken.same.SaSameUtil;import cn.hutool.core.map.MapUtil;import cn.hutool.json.JSONUtil;import com.alibaba...
