Java 9 引入了一系列解析與格式化增強,使 java.time 包更貼近 Unicode 區域設置數據標記語言(LDML)。這項工作由 Joda-Time 創始人 Stephen Colebourne 主導,他也曾主導 Java 8 的 java.time 引入。遵循 Unicode 標準將顯著提升 Java 9 與非 Java 系統的互操作性。
LDML 是 Unicode 通用區域設置數據庫(CLDR)使用的語言。CLDR 收集全球區域設置數據,幫助應用適應不同文化。LDML 專門解決日期、時間、時區的格式化與解析問題。
v:通用非位置格式,如「太平洋時間」。vvvv:通用位置格式,如「洛杉磯時間」。A:一天中已過毫秒數(LDML 定義寬度可變),Java 早期實現為固定寬度,導致 AA 無法解析 >99 毫秒的值。n、N:Java 擴展,分別表示秒內納秒數、天內納秒數。DD 原無法解析「123」作為第 123 天,現已修復固定寬度問題。Microsoft .NET、Node.js、Ruby 等技術棧均採用 LDML 進行區域設置數據交換。Java 9 的對齊將簡化跨系統集成,特別是微服務架構中的時間數據傳輸。