java教程技术文章
-
Java Commons CSV 中,空字符串是已映射列存在但值为 "";缺失列则要结合 isMapped、isSet 和 isConsistent 判断。本文给出安全读取顺序和不规则行处理方式。285 收藏 -
Gradle configuration cache 不复用时,先用 help 区分配置阶段和任务阶段,再根据问题报告修复 Project、监听器、外部进程和任务状态依赖;暂时无法迁移的任务只做局部 opt-out。281 收藏 -
Java Maven BOM 可以把一组相关依赖的版本集中到一个 POM,再由项目通过 dependencyManagement 和 import 引入。本文用原创示例说明 BOM 的写法、子模块声明、effective POM 排查,以及多个 BOM 重叠时的显式覆盖边界。279 收藏 -
用 Java Commons Compress 读取 tar 时,核心是以 TarArchiveInputStream 为当前归档流,用 getNextEntry() 逐项定位,再读取当前项字节。本文补上目录、编码、路径安全、资源关闭和大文件处理边界。274 收藏 -
InflaterInputStream.available() 只表示当前是否已到 EOF,未结束时通常返回 1,结束后返回 0,并不代表还剩多少字节。本文用正确的 read() 循环、资源关闭和排查日志说明如何判断压缩流真正结束。271 收藏 -
Java FFM API 的 MemorySegment 生命周期由关联作用域决定。本文比较四类 Arena,用独立示例说明切片与关闭后访问,并明确跨线程借用和释放责任。259 收藏 -
Java NIO 的 PathMatcher 可以由 FileSystem.getPathMatcher 创建,用 glob 规则匹配 Path 的字符串表示。本文从常见模式、目录遍历、路径层级和大小写边界出发,整理一套可直接放进文件筛选代码的写法。246 收藏 -
文章 · java教程 | 1天前 | 异步编程 · Java教程 · CompletableFuture · 进程管理 · java completablefuture process ProcessHandle onExit 异步进程
Java Process.onExit() 返回 CompletableFuture,可以把子进程结束接入异步链,而不必让当前线程一直阻塞在 waitFor。本文说明退出码、标准输出、错误输出、超时和 destroy 之间的职责边界。 233 收藏 -
用 Java Instant.truncatedTo 按分钟截断时间戳,理解支持单位、UTC 截断方向、比较方式与负时间戳边界。229 收藏 -
Java 模式 switch 不会让 null 自动落入普通类型模式。本文用 case null 和 case null, default 说明空值分支、default 兜底及非法组合边界,并给出一组最小反向验证清单。220 收藏 -
Java MultiValuedMap的get返回关联集合视图,修改会作用于原映射。通过标签编辑示例区分实时视图、草稿副本、只读快照和显式提交的边界。205 收藏 -
Java StringUtils.defaultIfBlank 会把 null、空串和仅空白视为需要回退;defaultIfEmpty 只处理 null 与空串。本文用边界表、代码和迁移清单说明如何选择。201 收藏 -
TreeSet 不是用 equals 直接判断重复,而是沿着 compareTo 或 Comparator.compare 的结果定位元素。本文用一个只比较年龄的场景解释 compare 返回 0 为什么会让第二个对象无法加入,并给出主键加唯一标识的稳定改法与迁移检查清单。190 收藏 -
Java Files.walk 返回的是惰性 Stream,它可能持有目录遍历资源,不能像普通集合一样长期放着不管。本文说明如何用 try-with-resources 包住完整消费范围,区分空结果、遍历异常和关闭边界,并整理一个可复用的安全封装。 180 收藏 -
Java Path.relativize 失败通常不是目标文件不存在,而是两个 Path 的绝对相对类型或根路径不匹配。本文用一个最小诊断工具说明判断条件、统一路径和安全降级写法。179 收藏