java教程技术文章
-
用 Java Collectors.teeing 在一次 Stream 消费中同时计算订单总额与通过数量,拆开两个下游 Collector、空输入默认值和结果对象的设计边界。290 收藏 -
Java sealed class 或 sealed interface 的分支覆盖率异常,先区分 permits 类型边界与 if/switch 真实分支,再检查 JaCoCo prepare-agent、Surefire argLine、编译版本和测试路径。289 收藏 -
Java Stream 里的 filter、map 等中间操作不会立刻执行,只有终止操作真正消费流时,链上的日志和断点才会出现。本文从一段看似没有输出的代码开始,拆开惰性求值的触发边界、短路终止操作和流只能消费一次的限制,并给出可复查的调试写法。288 收藏 -
用一个等待外部资源的 Java 并行任务说明 ForkJoinPool.managedBlock 的补偿线程机制、ManagedBlocker 契约与线程池关闭验收。288 收藏 -
Java 21 引入 SequencedMap 后,可以用统一的首尾操作和 reversed() 视图处理有明确遇见顺序的键值集合。本文用 LinkedHashMap 演示 firstEntry、lastEntry、putFirst、putLast 与倒序遍历的差异,并标出 Java 17 及更早版本的兼容边界。287 收藏 -
Java Selector 的 wakeup 是一次性选择唤醒信号。本文解释提前 wakeup 后 select 仍阻塞的常见时序,说明 selectNow 如何清除唤醒效果,并给出任务队列与事件循环的稳定写法。287 收藏 -
Java 25 将 ScopedValue 正式纳入平台 API,适合在一次请求的调用链里传递不会被中途修改的 requestId、租户和权限快照。本文用虚拟线程示例对比 ThreadLocal,给出最小写法、边界和迁移判断。284 收藏 -
Java 线程池出现任务堆积时,不要只盯着活动线程数。本文用队列长度、完成任务数和拒绝策略还原排查路径,并给出可复现的状态采样代码。284 收藏 -
Java HttpClient 的 BodyHandlers.ofLines 返回的是流式 Stream,读取完毕或提前停止都要明确关闭。本文从响应接收、行消费到资源释放拆开调用链,给出 try-with-resources 写法和提前终止时的边界。 283 收藏 -
用 Java EnumMap 保存订单状态转移规则,把合法迁移、非法迁移和默认分支放进一张可检查的状态表,避免订单流程散落在多处 if-else 中。282 收藏 -
Java Flow.Publisher 的背压不是一个抽象口号:Subscriber 通过 Subscription.request 控制批次,数据库写入完成后再补请求,取消时沿链路停止。本文用最小示例讲清请求量、批处理和取消边界。279 收藏 -
Java Jackson 反序列化 record 缺少 JSON 字段时,默认值应放在 canonical 构造器中,并明确处理 null、集合和基本类型边界。278 收藏 -
文章 · java教程 | 2星期前 | Java教程 · CompletableFuture · Java HttpClient Java异步请求超时 CompletableFuture异常处理 HttpTimeoutException sendAsync异常读取
本文用 Java HttpClient 和 CompletableFuture 给出异步 HTTP 请求的生产写法,说明 request timeout、HTTP 状态码、HttpTimeoutException 与 CompletionException 根因的区别。278 收藏 -
FlowLayout(流式布局管理器)算是最基础、也最容易上手的一种布局管理器。在这种布局方式下,容器会按照组件加入的先后顺序,从左到右依次摆放;一旦排到容器边界,后面的组件就会自动换到下一行开头继续排列。组件的排列方式也比较直观,可以选择左对齐、居中对齐(这是默认方式)或者右对齐。FlowLayo275 收藏 -
文章 · java教程 | 1个月前 | 排序 · 调试 · 集合 · Stream · Java教程 · java Stream linkedhashmap Collectors.groupingBy 分组顺序
Java Stream 用 groupingBy 分组时,结果默认通常是 HashMap,不能把遍历顺序当成输入顺序。本文从订单状态统计场景出发,拆解 LinkedHashMap 作为 mapFactory 的写法、排序边界和测试验收方法。275 收藏