Java and Unicode: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 11: Line 11:
=Overview=
=Overview=


Character information is maintained in Java by the primitive type <tt>char</tt>, which was designed based on the original Unicode 1.0 specification that allowed only 2<sup>16</sup> code points, so it was defined as a fixed-with 16-bit/2-byte entity. Since then, [[Character_Encoding#Unicode|the Unicode standard has evolved]] to allow for characters whose representation requires [[Character_Encoding#Unicode_Code_Points|more than 16 bits]].
Character information is maintained in Java by the primitive type <tt>char</tt>, which was designed based on the original Unicode 1.0 specification that allowed only 2<sup>16</sup> code points, so it was defined as a fixed-with 16-bit/2-byte entity. Since then, [[Character_Encoding#Unicode|the Unicode standard has evolved]] to allow for characters whose representation requires [[Character_Encoding#Unicode_Code_Points|more than 16 bits]].
 
Java platform uses the [[Character_Encoding#UTF-16|UTF-16]] representation in char arrays and in the String, StringBuffer and StringBuilder classes.
 
The [[Character_Encoding#Basic_Multilingual_Plane_.28BMP.29|Basic Multilingual Plane characters]] are represented as <tt>char</tt> instances, while the supplementary characters are represented as a pair of <tt>char</tt> values. [[Java#Java_5|Java 5]], which supports Unicode 4.0, introduced enhancements to correctly handle Unicode supplementary characters.


=U+n Notation Support=
=U+n Notation Support=

Revision as of 19:00, 26 June 2018

External

Internal

Overview

Character information is maintained in Java by the primitive type char, which was designed based on the original Unicode 1.0 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.

U+n Notation Support

U+n notation is supported in Java as follows:

Character Representation