Java 16位字符如何支持Unicode? [英] How does Java 16 bit chars support Unicode?

查看:72
本文介绍了Java 16位字符如何支持Unicode?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Javas char是16位,但Unicode有更多字符--Java是如何处理的?

Javas char is 16 bit, yet Unicode have far more characters - how does Java deal with that ?

推荐答案

Java字符串是UTF-16(大端),因此Unicode代码点可以是一个或两个字符。在此编码下,Java可以使用字符 0xD835 0xDD0A (字符串文字<$ c)表示代码点U + 1D50A( MATHEMATICAL FRAKTUR CAPITAL G ) $ C> \\\�\\\�)。 Character 类提供了转换为/从代码点转换的方法。

Java Strings are UTF-16 (big endian), so a Unicode code point can be one or two characters. Under this encoding, Java can represent the code point U+1D50A (MATHEMATICAL FRAKTUR CAPITAL G) using the chars 0xD835 0xDD0A (String literal "\uD835\uDD0A"). The Character class provides methods for converting to/from code points.

// Unicode code point to char array
char[] math_fraktur_cap_g = Character.toChars(0x1D50A);

这篇关于Java 16位字符如何支持Unicode?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆