java教程技术文章
-
Java 的 IsoFields.WEEK_BASED_YEAR 遵循 ISO 周年规则,年末几天可能已经属于下一周年度。本文用 LocalDate 和 DateTimeFormatter 说明普通年份、ISO 周年、YYYY 与 yyyy 的区别,并给出报表分组和测试建议。156 收藏 -
用 Java DateTimeFormatterBuilder.appendFraction 控制时间小数位,掌握 minWidth、maxWidth、decimalPoint 的组合、截断规则与严格解析边界。127 收藏 -
Java 的 DecimalStyle 可以把日期格式中的数字、正负号和小数点替换为本地化符号。本文用 DateTimeFormatter 演示非拉丁数字的配置、输出、解析与复用边界。365 收藏 -
Java TextStyle 为月份提供普通形式与独立形式。本文说明 FULL 与 FULL_STANDALONE、MMMM 与 LLLL 的区别,给出多语言日历示例,并解释复用标签时为何要区分语言、用途和文本长度。356 收藏 -
Java Arrays.compareUnsigned 可按无符号字节的字典序比较两个 byte 数组。本文说明完整数组与范围重载、三态返回值、前缀边界和排序中的使用方式。453 收藏 -
使用 Java Flight Recorder 的 RecordingFile.write 按事件类型筛选已有 recording.jfr,导出新的 JFR 文件;本文说明事件名称、多个事件白名单、类型清单和三种读取方式的选择边界。288 收藏 -
Java Arrays.mismatch 会返回两个数组的首个差异位置;完全相同返回 -1,一个数组只是另一个数组的前缀时返回较短数组长度。本文用整数组、范围重载和对象数组示例说明如何读取这个结果。244 收藏 -
通过共享计数器示例说明 ReentrantLock 公平锁的创建、成功获取后的释放,以及无参和限时 tryLock 的差别,并解释线程调度与吞吐取舍。247 收藏 -
Java HttpResponse.BodyHandlers.ofInputStream() 会在响应头到达后提供 InputStream,适合逐块处理大响应。本文说明固定缓冲区读取、状态码判断、EOF 与 close 的边界,并对比常用 BodyHandler 的选择方式。220 收藏 -
文章 · java教程 | 1天前 | Java · nio · HTTP客户端 · java httpclient HttpRequest BodyPublisher HTTP请求体 BodyPublishers
Java HttpRequest 的请求体不是直接塞入字符串,而是通过 BodyPublisher 提供字节流。本文按数据来源选择 BodyPublishers 工厂,说明 POST、PUT、自定义方法、长度契约和输入流复用边界。386 收藏 -
文章 · java教程 | 1天前 | 文件处理 · Java · 异常处理 · nio · java 文件替换 Files.move ATOMIC_MOVE REPLACE_EXISTING 原子移动
Java Files.move 的 ATOMIC_MOVE 与 REPLACE_EXISTING 解决的是不同问题:前者约束原子移动,后者允许覆盖已存在目标。本文按 FileStore、目标状态和原子性要求拆解选择方式,并给出 AtomicMoveNotSupportedException 的处理边界。290 收藏 -
Path.normalize 只按路径名称规则消除 . 和 ..,不会访问文件系统,也就不会检查符号链接。本文用 Java NIO 的 API 对比说明语义差异,并给出需要真实目标时的处理方式。497 收藏 -
从批量数值处理的输入路径解释 BigDecimal(double) 长尾的来源,比较字符串构造与 valueOf,并说明先做浮点运算、scale 和舍入规则的处理边界。162 收藏 -
Java Map.computeIfAbsent 的映射函数执行期间不应修改当前 Map。本文从外层写回时机、同键递归和不同 Map 实现的异常差异出发,给出纯计算、分阶段写入和回滚复查的排障手册。450 收藏 -
Java Collectors.filtering 适合放在 groupingBy 的下游,按条件过滤每个分组的元素,同时保留没有匹配值的分组键。本文用原创示例说明它与先调用 Stream.filter 的差异,以及如何选择下游 Collector。249 收藏