> This PR optimizes the parsing performance of DateTimeFormatter by replacing 
> HashMap with EnumMap in scenarios where the keys are exclusively ChronoField 
> enum values.
> 
> When parsing date/time strings, DateTimeFormatter creates HashMaps to store 
> intermediate parsed values. HashMap has more overhead for operations compared 
> to specialized map implementations.
> 
> Since ChronoField is an enum and all keys in these maps are ChronoField 
> instances, we can use EnumMap instead, which provides better performance for 
> enum keys due to its optimized internal structure.
> 
> Parsing scenarios show improvements from 12% to 95%

Shaojin Wen has updated the pull request incrementally with one additional 
commit since the last revision:

  from @liach

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/28471/files
  - new: https://git.openjdk.org/jdk/pull/28471/files/7137d9ec..9a0ad61a

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=28471&range=02
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=28471&range=01-02

  Stats: 49 lines in 2 files changed: 20 ins; 18 del; 11 mod
  Patch: https://git.openjdk.org/jdk/pull/28471.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/28471/head:pull/28471

PR: https://git.openjdk.org/jdk/pull/28471

Reply via email to