Java and Unicode
Jump to navigation
Jump to search
External
Internal
Overview
Character information is maintained in Java by the primitive type char, which was designed based on the original Unicode specification that allowed only 216 code points, so it was defined as a fixed-with 16-bit/2-byte entity. Since then, the Unicode standard has evolved to allow for characters whose representation requires more than 16 bits.
Java platform uses the UTF-16 representation in char arrays and in the String and StringBuffer classes. The Basic Multilingual Plane characters are represented as char instances, while the supplementary characters are represented as a pair of char values. For more details about supplementary character representation in Java see https://docs.oracle.com/javase/10/docs/api/java/lang/Character.html.