类
Character
1.概述
public final class Characterextends Objectimplements Serializable, Comparable<Character>Character
类在对象中包装一个基本类型 char 的值。Character 类型的对象包含类型为 char 的单个字段。
此外,该类提供了几种方法,以确定字符的类别(小写字母,数字,等等),并将字符从大写转换成小写,反之亦然。
2.此类的UML类图
因为 UnicodeScript 是enum 类,所以继承抽象的Enum类。
3.源码解析
源码太多了,就捡几个不太常用的来讲。
/**
* 判断是否为BMP代码点
* 从 U+0000 到 U+FFFF 的字符集有时也称为 Basic Multilingual Plane (BMP)
*/
public static boolean isBmpCodePoint(int codePoint) {
return codePoint >>> 16 == 0;
// Optimized form of:
// codePoint >= MIN_VALUE && codePoint <= MAX_VALUE
// We consistently use logical shift (>>>) to facilitate
// additional runtime optimizations.
}
/**
* 确定使用指定基数的特定数字的字符表示形式。
*
*/
public static char forDigit(int digit, int radix) {
// 只要一个为ture就为true
if ((digit >= radix) || (digit < 0)) {
return '\0';
// radix<2 或者 radix>36
if ((radix < Character.MIN_RADIX) || (radix > Character.MAX_RADIX)) {
return '\0';
}
if (digit < 10) {
return (char)('0' + digit);
}
return