On Thu, 5 Jun 2025 20:29:48 GMT, Justin Lu <j...@openjdk.org> wrote: >> Please review this PR which improves occurrences of lazy computation in >> `Locale` and `BaseLocale`. >> >> Existing lazy initialization strategies such as CHM, static nested class, >> and local inner class are replaced with Stable Values. >> >> Lambda usage is intentionally avoided in this change during `Locale` >> creation and in static fields due to potential startup performance >> degradation as noted by >> [JDK-8331932](https://bugs.openjdk.org/browse/JDK-8331932). >> >> Rather than convert `iso3166CodesMap` to a Stable Map, each ISO 3166 >> resource is represented as a SV. Also, I did not think it was necessary to >> maintain a SV for _both_ the array and set of ISO3166-1 alpha-2 codes. > > Justin Lu has updated the pull request incrementally with one additional > commit since the last revision: > > review - Moving all ISO resources to LocaleISOData & blessed modifier order > for languageTag
src/java.base/share/classes/java/util/Locale.java line 1282: > 1280: public static Set<String> getISOCountries(IsoCountryCode type) { > 1281: Objects.requireNonNull(type); > 1282: return switch (type) { The body of this method could also be moved to a method in `LocaleISOData` ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/25646#discussion_r2134036165