Summary
Support the Unicode Standard version 15.0.0 in the JDK.
Problem
Keeping up with the latest Unicode Standard is imperative. Otherwise, interoperability with other platforms would be problematic.
Solution
Incorporate Unicode 15.0 which assigned 4,489 characters, 7 new blocks, and 2 new scripts since Unicode 14.0. Detailed changes are described on the Unicode Consortium's 15.0 website.
java.text.Bidi
and java.text.Normalizer
classes will be upgraded to 15.0 level of Unicode Annex #9 and #15, respectively.
Support for the Unicode extended grapheme clusters in java.util.regex.Pattern
will be upgraded to 15.0 level of the Unicode Annex #29 "Unicode Text Segmentation."
For more specific delta charts, refer to Unicode.org's delta page.
Specification
Change the class description in the java.lang.Character
class as:
@@ -61,11 +61,11 @@
* This file specifies properties including name and category for every
* assigned Unicode code point or character range. The file is available
* from the Unicode Consortium at
* <a href="http://www.unicode.org">http://www.unicode.org</a>.
* <p>
- * Character information is based on the Unicode Standard, version 14.0.
+ * Character information is based on the Unicode Standard, version 15.0.
* <p>
* The Java platform has supported different versions of the Unicode
* Standard over time. Upgrades to newer versions of the Unicode Standard
* occurred in the following Java releases, each indicating the new version:
* <table class="striped">
@@ -73,10 +73,12 @@
* <thead>
* <tr><th scope="col">Java release</th>
* <th scope="col">Unicode version</th></tr>
* </thead>
* <tbody>
+ * <tr><th scope="row" style="text-align:left">Java SE 20</th>
+ * <td>Unicode 15.0</td></tr>
* <tr><th scope="row" style="text-align:left">Java SE 19</th>
* <td>Unicode 14.0</td></tr>
* <tr><th scope="row" style="text-align:left">Java SE 15</th>
* <td>Unicode 13.0</td></tr>
* <tr><th scope="row" style="text-align:left">Java SE 13</th>
In java.lang.Character.UnicodeBlock
class, add the following new fields:
+ /**
+ * Constant for the "Arabic Extended-C" Unicode
+ * character block.
+ * @since 20
+ */
+ public static final UnicodeBlock ARABIC_EXTENDED_C =
+ new UnicodeBlock("ARABIC_EXTENDED_C",
+ "ARABIC EXTENDED-C",
+ "ARABICEXTENDED-C");
+
+ /**
+ * Constant for the "Devanagari Extended-A" Unicode
+ * character block.
+ * @since 20
+ */
+ public static final UnicodeBlock DEVANAGARI_EXTENDED_A =
+ new UnicodeBlock("DEVANAGARI_EXTENDED_A",
+ "DEVANAGARI EXTENDED-A",
+ "DEVANAGARIEXTENDED-A");
+
+ /**
+ * Constant for the "Kawi" Unicode
+ * character block.
+ * @since 20
+ */
+ public static final UnicodeBlock KAWI =
+ new UnicodeBlock("KAWI");
+
+ /**
+ * Constant for the "Kaktovik Numerals" Unicode
+ * character block.
+ * @since 20
+ */
+ public static final UnicodeBlock KAKTOVIK_NUMERALS =
+ new UnicodeBlock("KAKTOVIK_NUMERALS",
+ "KAKTOVIK NUMERALS",
+ "KAKTOVIKNUMERALS");
+
+ /**
+ * Constant for the "Cyrillic Extended-D" Unicode
+ * character block.
+ * @since 20
+ */
+ public static final UnicodeBlock CYRILLIC_EXTENDED_D =
+ new UnicodeBlock("CYRILLIC_EXTENDED_D",
+ "CYRILLIC EXTENDED-D",
+ "CYRILLICEXTENDED-D");
+
+ /**
+ * Constant for the "Nag Mundari" Unicode
+ * character block.
+ * @since 20
+ */
+ public static final UnicodeBlock NAG_MUNDARI =
+ new UnicodeBlock("NAG_MUNDARI",
+ "NAG MUNDARI",
+ "NAGMUNDARI");
+
+ /**
+ * Constant for the "CJK Unified Ideographs Extension H" Unicode
+ * character block.
+ * @since 20
+ */
+ public static final UnicodeBlock CJK_UNIFIED_IDEOGRAPHS_EXTENSION_H =
+ new UnicodeBlock("CJK_UNIFIED_IDEOGRAPHS_EXTENSION_H",
+ "CJK UNIFIED IDEOGRAPHS EXTENSION H",
+ "CJKUNIFIEDIDEOGRAPHSEXTENSIONH");
+
In java.lang.Character.UnicodeScript
enum, add the following new fields:
+ /**
+ * Unicode script "Kawi".
+ * @since 20
+ */
+ KAWI,
+
+ /**
+ * Unicode script "Nag Mundari".
+ * @since 20
+ */
+ NAG_MUNDARI,
- csr of
-
JDK-8284842 Update Unicode Data Files to 15.0.0
-
- Resolved
-