- 所有已实现的接口:
-
Serializable
,Comparable<Character>
,Constable
Character
类将原始类型char
的值封装在对象中。Character
类的对象包含一个类型为char
的字段。
此外,该类提供了大量静态方法,用于确定字符的类别(小写字母、数字等),以及将字符从大写转换为小写,反之亦然。
Unicode一致性
Character
类的字段和方法是根据Unicode标准中的字符信息定义的,具体来说是Unicode字符数据库的一部分的UnicodeData文件。该文件为每个已分配的Unicode代码点或字符范围指定名称和类别等属性。该文件可从Unicode联盟的http://www.unicode.org获取。
字符信息基于Unicode标准第15.0版。
Java平台随时间支持了不同版本的Unicode标准。在以下Java版本中升级到新版本的Unicode标准,每个版本都指示了新版本:
Java版本 | Unicode版本 |
---|---|
Java SE 20 | Unicode 15.0 |
Java SE 19 | Unicode 14.0 |
Java SE 15 | Unicode 13.0 |
Java SE 13 | Unicode 12.1 |
Java SE 12 | Unicode 11.0 |
Java SE 11 | Unicode 10.0 |
Java SE 9 | Unicode 8.0 |
Java SE 8 | Unicode 6.2 |
Java SE 7 | Unicode 6.0 |
Java SE 5.0 | Unicode 4.0 |
Java SE 1.4 | Unicode 3.0 |
JDK 1.1 | Unicode 2.0 |
JDK 1.0.2 | Unicode 1.1.5 |
Unicode字符表示
char
数据类型(因此Character
对象封装的值)基于最初的Unicode规范,该规范将字符定义为固定宽度的16位实体。现在,Unicode标准已更改,以允许需要超过16位表示的字符。合法代码点范围现在是U+0000到U+10FFFF,称为Unicode标量值。(请参阅Unicode标准中U+n表示法的定义。)
从U+0000到U+FFFF的字符集有时被称为基本多语言平面(BMP)。代码点大于U+FFFF的字符称为补充字符。Java平台在char
数组以及String
和StringBuffer
类中使用UTF-16表示。在此表示中,补充字符表示为一对char
值,第一个值来自高代理项范围(\uD800-\uDBFF),第二个值来自低代理项范围(\uDC00-\uDFFF)。
因此,char
值表示基本多语言平面(BMP)代码点,包括代理项代码点,或UTF-16编码的代码单元。一个int
值表示所有Unicode代码点,包括补充代码点。int
的低(最低有效)21位用于表示Unicode代码点,高(最高有效)11位必须为零。除非另有说明,否则关于补充字符和代理char
值的行为如下:
- 只接受
char
值的方法不支持补充字符。它们将代理范围内的char
值视为未定义字符。例如,Character.isLetter('\uD840')
返回false
,即使此特定值后跟字符串中的任何低代理值将表示一个字母。 - 接受
int
值的方法支持所有Unicode字符,包括补充字符。例如,Character.isLetter(0x2F81A)
返回true
,因为代码点值表示一个字母(一个CJK表意文字)。
在Java SE API文档中,Unicode代码点用于介于U+0000和U+10FFFF之间的字符值,Unicode代码单元用于UTF-16编码的16位char
值的代码单元。有关Unicode术语的更多信息,请参阅Unicode术语表。
这是一个基于值的类;程序员应将相等的实例视为可互换,并且不应将实例用于同步,否则可能会发生不可预测的行为。例如,在将来的版本中,同步可能会失败。
- 自:
- 1.0
- 外部规范
- 参见:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
该类的实例表示Unicode字符集的特定子集。static final class
代表Unicode规范中字符块的字符子集系列。static enum
代表Unicode标准附录中定义的字符脚本的字符子集系列。 -
Field Summary
Modifier and TypeFieldDescriptionstatic final int
以无符号二进制形式表示char
值所需的字节数。static final byte
Unicode规范中的一般类别"Mc"。static final byte
Unicode规范中的一般类别"Pc"。static final byte
Unicode规范中的一般类别"Cc"。static final byte
Unicode规范中的一般类别"Sc"。static final byte
Unicode规范中的一般类别"Pd"。static final byte
Unicode规范中的一般类别"Nd"。static final byte
Unicode规范中的弱双向字符类型"AN"。static final byte
Unicode规范中的弱双向字符类型"BN"。static final byte
Unicode规范中的弱双向字符类型"CS"。static final byte
Unicode规范中的弱双向字符类型"EN"。static final byte
Unicode规范中的弱双向字符类型"ES"。static final byte
Unicode规范中的弱双向字符类型"ET"。static final byte
Unicode规范中的弱双向字符类型"FSI"。static final byte
Unicode规范中的强双向字符类型"L"。static final byte
Unicode规范中的强双向字符类型"LRE"。static final byte
Unicode规范中的弱双向字符类型"LRI"。static final byte
Unicode规范中的强双向字符类型"LRO"。static final byte
Unicode规范中的弱双向字符类型"NSM"。static final byte
Unicode规范中的中性双向字符类型"ON"。static final byte
Unicode规范中的中性双向字符类型"B"。static final byte
Unicode规范中的弱双向字符类型"PDF"。static final byte
Unicode规范中的弱双向字符类型"PDI"。static final byte
Unicode规范中的强双向字符类型"R"。static final byte
Unicode规范中的强双向字符类型"AL"。static final byte
Unicode规范中的强双向字符类型"RLE"。static final byte
Unicode规范中的弱双向字符类型"RLI"。static final byte
Unicode规范中的强双向字符类型"RLO"。static final byte
Unicode规范中的中性双向字符类型"S"。static final byte
未定义的双向字符类型。static final byte
Unicode规范中的中性双向字符类型"WS"。static final byte
Unicode规范中的一般类别"Me"。static final byte
Unicode规范中的一般类别"Pe"。static final byte
Unicode规范中的一般类别"Pf"。static final byte
Unicode规范中的一般类别"Cf"。static final byte
Unicode规范中的一般类别"Pi"。static final byte
Unicode规范中的一般类别"Nl"。static final byte
Unicode规范中的一般类别"Zl"。static final byte
Unicode规范中的一般类别"Ll"。static final byte
Unicode规范中的一般类别"Sm"。static final int
Unicode代码点的最大值,常量U+10FFFF
。static final char
UTF-16编码中Unicode高代理项的最大值,常量'\uDBFF'
。static final char
UTF-16编码中Unicode低代理项的最大值,常量'\uDFFF'
。static final int
可用于字符串转换的最大基数。static final char
UTF-16编码中Unicode代理代码单元的最大值,常量'\uDFFF'
。static final char
该字段的常量值是char
类型的最大值,'\uFFFF'
。static final int
Unicode代码点的最小值,常量U+0000
。static final char
UTF-16编码中Unicode高代理代码单元的最小值,常量'\uD800'
。static final char
UTF-16编码中Unicode低代理代码单元的最小值,常量'\uDC00'
。static final int
可用于字符串转换的最小基数。static final int
Unicode补充代码点的最小值,常量U+10000
。static final char
UTF-16编码中Unicode代理代码单元的最小值,常量'\uD800'
。static final char
该字段的常量值是char
类型的最小值,'\u0000'
。static final byte
Unicode规范中的一般类别“Lm”。static final byte
Unicode规范中的一般类别“Sk”。static final byte
Unicode规范中的一般类别“Mn”。static final byte
Unicode规范中的一般类别“Lo”。static final byte
Unicode规范中的一般类别“No”。static final byte
Unicode规范中的一般类别“Po”。static final byte
Unicode规范中的一般类别“So”。static final byte
Unicode规范中的一般类别“Zp”。static final byte
Unicode规范中的一般类别“Co”。static final int
以无符号二进制形式表示char
值所使用的位数,常量16
。static final byte
Unicode规范中的一般类别“Zs”。static final byte
Unicode规范中的一般类别“Ps”。static final byte
Unicode规范中的一般类别“Cs”。static final byte
Unicode规范中的一般类别“Lt”。表示原始类型char
的Class
实例。static final byte
Unicode规范中的一般类别“Cn”。static final byte
Unicode规范中的一般类别“Lu”。 -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic int
charCount
(int codePoint) 确定表示指定字符(Unicode代码点)所需的char
值的数量。char
返回此Character
对象的值。static int
codePointAt
(char[] a, int index) 返回char
数组中给定索引处的代码点。static int
codePointAt
(char[] a, int index, int limit) 返回char
数组中给定索引处的代码点,其中只能使用小于limit
的索引的数组元素。static int
codePointAt
(CharSequence seq, int index) 返回CharSequence
中给定索引处的代码点。static int
codePointBefore
(char[] a, int index) 返回char
数组中给定索引之前的代码点。static int
codePointBefore
(char[] a, int index, int start) 返回char
数组中给定索引之前的代码点,其中只能使用大于或等于start
的索引的数组元素。static int
codePointBefore
(CharSequence seq, int index) 返回CharSequence
中给定索引之前的代码点。static int
codePointCount
(char[] a, int offset, int count) 返回char
数组参数的子数组中的Unicode代码点数。static int
codePointCount
(CharSequence seq, int beginIndex, int endIndex) 返回指定字符序列的文本范围中的Unicode代码点数。static int
codePointOf
(String name) 返回由给定字符名称指定的Unicode字符的代码点值。static int
compare
(char x, char y) 数值上比较两个char
值。int
数值上比较两个Character
对象。返回包含此实例的名义描述符的Optional
。static int
digit
(char ch, int radix) 返回指定基数中字符ch
的数值。static int
digit
(int codePoint, int radix) 返回指定基数中指定字符(Unicode代码点)的数值。boolean
将此对象与指定对象进行比较。static char
forDigit
(int digit, int radix) 确定指定基数中特定数字的字符表示。static byte
getDirectionality
(char ch) 返回给定字符的Unicode方向性属性。static byte
getDirectionality
(int codePoint) 返回给定字符(Unicode代码点)的Unicode方向性属性。static String
getName
(int codePoint) 返回指定字符codePoint
的名称,如果代码点为unassigned
,则返回null。static int
getNumericValue
(char ch) 返回指定Unicode字符表示的int
值。static int
getNumericValue
(int codePoint) 返回指定字符(Unicode代码点)表示的int
值。static int
getType
(char ch) 返回表示字符的一般类别的值。static int
getType
(int codePoint) 返回表示字符的一般类别的值。int
hashCode()
返回此Character
的哈希码;等同于调用charValue()
的结果。static int
hashCode
(char value) 返回char
值的哈希码;与Character.hashCode()
兼容。static char
highSurrogate
(int codePoint) 返回UTF-16编码中表示指定补充字符(Unicode代码点)的surrogate pair
的leading surrogate
(高代理代码单元)。static boolean
isAlphabetic
(int codePoint) 确定指定字符(Unicode代码点)是否为字母。static boolean
isBmpCodePoint
(int codePoint) 确定指定字符(Unicode代码点)是否在基本多文种平面(BMP)中。static boolean
isDefined
(char ch) 确定字符是否在Unicode中定义。static boolean
isDefined
(int codePoint) 确定字符(Unicode代码点)是否在Unicode中定义。static boolean
isDigit
(char ch) 确定指定字符是否为数字。static boolean
isDigit
(int codePoint) 确定指定字符(Unicode代码点)是否为数字。static boolean
isEmoji
(int codePoint) 确定指定字符(Unicode代码点)是否为表情符号。static boolean
isEmojiComponent
(int codePoint) 确定指定字符(Unicode代码点)是否为表情符号组件。static boolean
isEmojiModifier
(int codePoint) 确定指定字符(Unicode代码点)是否为表情符号修饰符。static boolean
isEmojiModifierBase
(int codePoint) 确定指定字符(Unicode代码点)是否为表情符号修饰符基础。static boolean
isEmojiPresentation
(int codePoint) 确定指定字符(Unicode代码点)是否具有默认的表情符号呈现属性。static boolean
isExtendedPictographic
(int codePoint) 确定指定字符(Unicode代码点)是否为扩展象形文字。static boolean
isHighSurrogate
(char ch) 确定给定char
值是否为Unicode高代理代码单元(也称为前导代理代码单元)。static boolean
isIdentifierIgnorable
(char ch) 确定指定字符是否应被视为Java标识符或Unicode标识符中的可忽略字符。static boolean
isIdentifierIgnorable
(int codePoint) 确定指定字符(Unicode代码点)是否应被视为Java标识符或Unicode标识符中的可忽略字符。static boolean
isIdeographic
(int codePoint) 确定指定字符(Unicode代码点)是否为CJKV(中文、日文、韩文和越南文)表意文字,如Unicode标准所定义。static boolean
isISOControl
(char ch) 确定指定字符是否为ISO控制字符。static boolean
isISOControl
(int codePoint) 确定引用的字符(Unicode代码点)是否为ISO控制字符。static boolean
isJavaIdentifierPart
(char ch) 确定指定字符是否可以作为Java标识符中除第一个字符外的部分。static boolean
isJavaIdentifierPart
(int codePoint) 确定字符(Unicode代码点)是否可以作为Java标识符中除第一个字符外的部分。static boolean
isJavaIdentifierStart
(char ch) 确定指定字符是否可以作为Java标识符中的第一个字符。static boolean
isJavaIdentifierStart
(int codePoint) 确定字符(Unicode代码点)是否可以作为Java标识符中的第一个字符。static boolean
isJavaLetter
(char ch) 已弃用。已被isJavaIdentifierStart(char)取代。static boolean
isJavaLetterOrDigit
(char ch) 已弃用。已被isJavaIdentifierPart(char)取代。static boolean
isLetter
(char ch) 确定指定字符是否为字母。static boolean
isLetter
(int codePoint) 确定指定字符(Unicode代码点)是否为字母。static boolean
isLetterOrDigit
(char ch) 确定指定字符是否为字母或数字。static boolean
isLetterOrDigit
(int codePoint) 确定指定字符(Unicode代码点)是否为字母或数字。static boolean
isLowerCase
(char ch) 确定指定字符是否为小写字符。static boolean
isLowerCase
(int codePoint) 确定指定字符(Unicode代码点)是否为小写字符。static boolean
isLowSurrogate
(char ch) 确定给定char
值是否为Unicode低代理代码单元(也称为尾随代理代码单元)。static boolean
isMirrored
(char ch) 根据Unicode规范确定字符是否为镜像字符。static boolean
isMirrored
(int codePoint) 根据Unicode规范确定指定字符(Unicode代码点)是否为镜像字符。static boolean
isSpace
(char ch) 已弃用。已被isWhitespace(char)取代。static boolean
isSpaceChar
(char ch) 确定指定字符是否为Unicode空格字符。static boolean
isSpaceChar
(int codePoint) 确定指定字符(Unicode代码点)是否为Unicode空格字符。static boolean
isSupplementaryCodePoint
(int codePoint) 确定指定字符(Unicode代码点)是否在补充字符范围内。static boolean
isSurrogate
(char ch) 确定给定char
值是否为Unicode代理代码单元。static boolean
isSurrogatePair
(char high, char low) 确定指定的一对char
值是否是有效的Unicode代理对。static boolean
isTitleCase
(char ch) 确定指定的字符是否是标题大小写字符。static boolean
isTitleCase
(int codePoint) 确定指定的字符(Unicode代码点)是否是标题大小写字符。static boolean
isUnicodeIdentifierPart
(char ch) 确定指定的字符是否可以作为Unicode标识符的一部分,而不是第一个字符。static boolean
isUnicodeIdentifierPart
(int codePoint) 确定指定的字符(Unicode代码点)是否可以作为Unicode标识符的一部分,而不是第一个字符。static boolean
isUnicodeIdentifierStart
(char ch) 确定指定的字符是否可以作为Unicode标识符的第一个字符。static boolean
isUnicodeIdentifierStart
(int codePoint) 确定指定的字符(Unicode代码点)是否可以作为Unicode标识符的第一个字符。static boolean
isUpperCase
(char ch) 确定指定的字符是否是大写字符。static boolean
isUpperCase
(int codePoint) 确定指定的字符(Unicode代码点)是否是大写字符。static boolean
isValidCodePoint
(int codePoint) 确定指定的代码点是否是有效的Unicode代码点值。static boolean
isWhitespace
(char ch) 确定指定的字符是否根据Java定义为空格字符。static boolean
isWhitespace
(int codePoint) 确定指定的字符(Unicode代码点)是否根据Java定义为空格字符。static char
lowSurrogate
(int codePoint) 返回UTF-16编码中表示指定补充字符(Unicode代码点)的代理对的尾部代理(低代理代码单元)。static int
offsetByCodePoints
(char[] a, int start, int count, int index, int codePointOffset) 返回给定char
子数组中从给定index
偏移codePointOffset
代码点的索引。static int
offsetByCodePoints
(CharSequence seq, int index, int codePointOffset) 返回给定char序列中从给定index
偏移codePointOffset
代码点的索引。static char
reverseBytes
(char ch) 返回指定char
值的字节顺序颠倒后的值。static char[]
toChars
(int codePoint) 将指定的字符(Unicode代码点)转换为存储在char
数组中的UTF-16表示。static int
toChars
(int codePoint, char[] dst, int dstIndex) 将指定的字符(Unicode代码点)转换为其UTF-16表示。static int
toCodePoint
(char high, char low) 将指定的代理对转换为其补充代码点值。static char
toLowerCase
(char ch) 使用UnicodeData文件中的大小写映射信息将字符参数转换为小写。static int
toLowerCase
(int codePoint) 使用UnicodeData文件中的大小写映射信息将字符(Unicode代码点)参数转换为小写。toString()
返回表示此Character
值的String
对象。static String
toString
(char c) 返回表示指定char
的String
对象。static String
toString
(int codePoint) 返回表示指定字符(Unicode代码点)的String
对象。static char
toTitleCase
(char ch) 使用UnicodeData文件中的大小写映射信息将字符参数转换为标题大小写。static int
toTitleCase
(int codePoint) 使用UnicodeData文件中的大小写映射信息将字符(Unicode代码点)参数转换为标题大小写。static char
toUpperCase
(char ch) 使用UnicodeData文件中的大小写映射信息将字符参数转换为大写。static int
toUpperCase
(int codePoint) 使用UnicodeData文件中的大小写映射信息将字符(Unicode代码点)参数转换为大写。static Character
valueOf
(char c) 返回表示指定char
值的Character
实例。
-
Field Details
-
MIN_RADIX
public static final int MIN_RADIX用于字符串转换的最小基数。此字段的常量值是在类Integer
的digit
方法、forDigit
方法和toString
方法等基数转换方法中允许的最小值。- 参见:
-
MAX_RADIX
public static final int MAX_RADIX用于字符串转换的最大基数。此字段的常量值是在类Integer
的digit
方法、forDigit
方法和toString
方法等基数转换方法中允许的最大值。- 参见:
-
MIN_VALUE
public static final char MIN_VALUE此字段的常量值是char
类型的最小值,'\u0000'
。- 自:
- 1.0.2
- 参见:
-
MAX_VALUE
public static final char MAX_VALUE此字段的常量值是char
类型的最大值,'\uFFFF'
。- 自:
- 1.0.2
- 参见:
-
TYPE
表示原始类型char
的Class
实例。- 自:
- 1.1
-
UNASSIGNED
public static final byte UNASSIGNEDUnicode规范中的一般类别“Cn”。- 自:
- 1.1
- 参见:
-
UPPERCASE_LETTER
public static final byte UPPERCASE_LETTERUnicode规范中的一般类别“Lu”。- 自:
- 1.1
- 参见:
-
LOWERCASE_LETTER
public static final byte LOWERCASE_LETTERUnicode规范中的一般类别“Ll”。- 自:
- 1.1
- 参见:
-
TITLECASE_LETTER
public static final byte TITLECASE_LETTERUnicode规范中的一般类别“Lt”。- 自:
- 1.1
- 参见:
-
MODIFIER_LETTER
public static final byte MODIFIER_LETTERUnicode规范中的一般类别“Lm”。- 自:
- 1.1
- 参见:
-
OTHER_LETTER
public static final byte OTHER_LETTERUnicode规范中的一般类别“Lo”。- 自:
- 1.1
- 参见:
-
NON_SPACING_MARK
public static final byte NON_SPACING_MARKUnicode规范中的一般类别“Mn”。- 自:
- 1.1
- 参见:
-
ENCLOSING_MARK
public static final byte ENCLOSING_MARKUnicode规范中的一般类别“Me”。- 自:
- 1.1
- 参见:
-
COMBINING_SPACING_MARK
public static final byte COMBINING_SPACING_MARKUnicode规范中的一般类别“Mc”。- 自:
- 1.1
- 参见:
-
DECIMAL_DIGIT_NUMBER
public static final byte DECIMAL_DIGIT_NUMBERUnicode规范中的一般类别“Nd”。- 自:
- 1.1
- 参见:
-
LETTER_NUMBER
public static final byte LETTER_NUMBERUnicode规范中的一般类别“Nl”。- 自:
- 1.1
- 参见:
-
OTHER_NUMBER
public static final byte OTHER_NUMBERUnicode规范中的一般类别“No”。- 自:
- 1.1
- 参见:
-
SPACE_SEPARATOR
public static final byte SPACE_SEPARATORUnicode规范中的一般类别“Zs”。- 自:
- 1.1
- 参见:
-
LINE_SEPARATOR
public static final byte LINE_SEPARATORUnicode规范中的一般类别“Zl”。- 自:
- 1.1
- 参见:
-
PARAGRAPH_SEPARATOR
public static final byte PARAGRAPH_SEPARATORUnicode规范中的一般类别“Zp”。- 自:
- 1.1
- 参见:
-
CONTROL
public static final byte CONTROLUnicode规范中的一般类别“Cc”。- 自:
- 1.1
- 参见:
-
FORMAT
public static final byte FORMATUnicode规范中的一般类别“Cf”。- 自:
- 1.1
- 参见:
-
PRIVATE_USE
public static final byte PRIVATE_USEUnicode规范中的一般类别“Co”。- 自:
- 1.1
- 参见:
-
SURROGATE
public static final byte SURROGATEUnicode规范中的一般类别“Cs”。- 自:
- 1.1
- 参见:
-
DASH_PUNCTUATION
public static final byte DASH_PUNCTUATIONUnicode规范中的一般类别“Pd”。- 自:
- 1.1
- 参见:
-
START_PUNCTUATION
public static final byte START_PUNCTUATIONUnicode规范中的一般类别“Ps”。- 自:
- 1.1
- 参见:
-
END_PUNCTUATION
public static final byte END_PUNCTUATIONUnicode规范中的一般类别“Pe”。- 自:
- 1.1
- 参见:
-
CONNECTOR_PUNCTUATION
public static final byte CONNECTOR_PUNCTUATIONUnicode规范中的一般类别“Pc”。- 自:
- 1.1
- 参见:
-
OTHER_PUNCTUATION
public static final byte OTHER_PUNCTUATIONUnicode规范中的一般类别“Po”。- 自:
- 1.1
- 参见:
-
MATH_SYMBOL
public static final byte MATH_SYMBOLUnicode规范中的一般类别“Sm”。- 自:
- 1.1
- 参见:
-
CURRENCY_SYMBOL
public static final byte CURRENCY_SYMBOLUnicode规范中的一般类别“Sc”。- 自:
- 1.1
- 参见:
-
MODIFIER_SYMBOL
public static final byte MODIFIER_SYMBOLUnicode规范中的一般类别“Sk”。- 自:
- 1.1
- 参见:
-
OTHER_SYMBOL
public static final byte OTHER_SYMBOLUnicode规范中的一般类别“So”。- 自:
- 1.1
- 参见:
-
INITIAL_QUOTE_PUNCTUATION
public static final byte INITIAL_QUOTE_PUNCTUATIONUnicode规范中的一般类别“Pi”。- 自:
- 1.4
- 参见:
-
FINAL_QUOTE_PUNCTUATION
public static final byte FINAL_QUOTE_PUNCTUATIONUnicode规范中的一般类别“Pf”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_UNDEFINED
public static final byte DIRECTIONALITY_UNDEFINED未定义的双向字符类型。在Unicode规范中,未定义的char
值具有未定义的方向性。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_LEFT_TO_RIGHT
public static final byte DIRECTIONALITY_LEFT_TO_RIGHTUnicode规范中的强双向字符类型“L”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_RIGHT_TO_LEFT
public static final byte DIRECTIONALITY_RIGHT_TO_LEFTUnicode规范中的强双向字符类型“R”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_RIGHT_TO_LEFT_ARABIC
public static final byte DIRECTIONALITY_RIGHT_TO_LEFT_ARABICUnicode规范中的强双向字符类型“AL”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_EUROPEAN_NUMBER
public static final byte DIRECTIONALITY_EUROPEAN_NUMBERUnicode规范中的弱双向字符类型“EN”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_EUROPEAN_NUMBER_SEPARATOR
public static final byte DIRECTIONALITY_EUROPEAN_NUMBER_SEPARATORUnicode规范中的弱双向字符类型“ES”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_EUROPEAN_NUMBER_TERMINATOR
public static final byte DIRECTIONALITY_EUROPEAN_NUMBER_TERMINATORUnicode规范中的弱双向字符类型“ET”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_ARABIC_NUMBER
public static final byte DIRECTIONALITY_ARABIC_NUMBERUnicode规范中的弱双向字符类型“AN”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_COMMON_NUMBER_SEPARATOR
public static final byte DIRECTIONALITY_COMMON_NUMBER_SEPARATORUnicode规范中的弱双向字符类型“CS”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_NONSPACING_MARK
public static final byte DIRECTIONALITY_NONSPACING_MARKUnicode规范中的弱双向字符类型“NSM”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_BOUNDARY_NEUTRAL
public static final byte DIRECTIONALITY_BOUNDARY_NEUTRALUnicode规范中的弱双向字符类型“BN”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_PARAGRAPH_SEPARATOR
public static final byte DIRECTIONALITY_PARAGRAPH_SEPARATORUnicode规范中的中性双向字符类型“B”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_SEGMENT_SEPARATOR
public static final byte DIRECTIONALITY_SEGMENT_SEPARATORUnicode规范中的中性双向字符类型“S”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_WHITESPACE
public static final byte DIRECTIONALITY_WHITESPACEUnicode规范中的中性双向字符类型“WS”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_OTHER_NEUTRALS
public static final byte DIRECTIONALITY_OTHER_NEUTRALSUnicode规范中的中性双向字符类型“ON”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_LEFT_TO_RIGHT_EMBEDDING
public static final byte DIRECTIONALITY_LEFT_TO_RIGHT_EMBEDDINGUnicode规范中的强双向字符类型“LRE”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE
public static final byte DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDEUnicode规范中的强双向字符类型“LRO”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_RIGHT_TO_LEFT_EMBEDDING
public static final byte DIRECTIONALITY_RIGHT_TO_LEFT_EMBEDDINGUnicode规范中的强双向字符类型“RLE”。- 自:
- 1.4
- 参见:
-
DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDE
public static final byte DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDEUnicode规范中的强双向字符类型“RLO”。- 自从:
- 1.4
- 参见:
-
DIRECTIONALITY_POP_DIRECTIONAL_FORMAT
public static final byte DIRECTIONALITY_POP_DIRECTIONAL_FORMATUnicode规范中的弱双向字符类型"PDF"。- 自从:
- 1.4
- 参见:
-
DIRECTIONALITY_LEFT_TO_RIGHT_ISOLATE
public static final byte DIRECTIONALITY_LEFT_TO_RIGHT_ISOLATEUnicode规范中的弱双向字符类型"LRI"。- 自从:
- 9
- 参见:
-
DIRECTIONALITY_RIGHT_TO_LEFT_ISOLATE
public static final byte DIRECTIONALITY_RIGHT_TO_LEFT_ISOLATEUnicode规范中的弱双向字符类型"RLI"。- 自从:
- 9
- 参见:
-
DIRECTIONALITY_FIRST_STRONG_ISOLATE
public static final byte DIRECTIONALITY_FIRST_STRONG_ISOLATEUnicode规范中的弱双向字符类型"FSI"。- 自从:
- 9
- 参见:
-
DIRECTIONALITY_POP_DIRECTIONAL_ISOLATE
public static final byte DIRECTIONALITY_POP_DIRECTIONAL_ISOLATEUnicode规范中的弱双向字符类型"PDI"。- 自从:
- 9
- 参见:
-
MIN_HIGH_SURROGATE
public static final char MIN_HIGH_SURROGATEUTF-16编码中Unicode高代理码单元的最小值,常量'\uD800'
。高代理也称为领导代理。- 自从:
- 1.5
- 参见:
-
MAX_HIGH_SURROGATE
public static final char MAX_HIGH_SURROGATEUTF-16编码中Unicode高代理码单元的最大值,常量'\uDBFF'
。高代理也称为领导代理。- 自从:
- 1.5
- 参见:
-
MIN_LOW_SURROGATE
public static final char MIN_LOW_SURROGATEUTF-16编码中Unicode低代理码单元的最小值,常量'\uDC00'
。低代理也称为尾随代理。- 自从:
- 1.5
- 参见:
-
MAX_LOW_SURROGATE
public static final char MAX_LOW_SURROGATEUTF-16编码中Unicode低代理码单元的最大值,常量'\uDFFF'
。低代理也称为尾随代理。- 自从:
- 1.5
- 参见:
-
MIN_SURROGATE
public static final char MIN_SURROGATEUTF-16编码中Unicode代理码单元的最小值,常量'\uD800'
。- 自从:
- 1.5
- 参见:
-
MAX_SURROGATE
public static final char MAX_SURROGATEUTF-16编码中Unicode代理码单元的最大值,常量'\uDFFF'
。- 自从:
- 1.5
- 参见:
-
MIN_SUPPLEMENTARY_CODE_POINT
public static final int MIN_SUPPLEMENTARY_CODE_POINTUnicode补充码点的最小值,常量U+10000
。- 自从:
- 1.5
- 参见:
-
MIN_CODE_POINT
public static final int MIN_CODE_POINTUnicode码点的最小值,常量U+0000
。- 自从:
- 1.5
- 参见:
-
MAX_CODE_POINT
public static final int MAX_CODE_POINTUnicode码点的最大值,常量U+10FFFF
。- 自从:
- 1.5
- 参见:
-
SIZE
public static final int SIZE用于以无符号二进制形式表示char
值的位数,常量16
。- 自从:
- 1.5
- 参见:
-
BYTES
public static final int BYTES用于以无符号二进制形式表示char
值的字节数。- 自从:
- 1.8
- 参见:
-
-
Constructor Details
-
Character
Deprecated, for removal: This API element is subject to removal in a future version.It is rarely appropriate to use this constructor. The static factoryvalueOf(char)
is generally a better choice, as it is likely to yield significantly better space and time performance.构造一个新分配的Character
对象,表示指定的char
值。- 参数:
-
value
- 要由Character
对象表示的值。
-
-
Method Details
-
describeConstable
返回一个包含此实例的名义描述符的Optional
。- 指定者:
-
describeConstable
在接口Constable
- 返回:
-
一个描述
Character
实例的Optional
- 自从:
- 15
-
valueOf
返回表示指定char
值的Character
实例。如果不需要新的Character
实例,则通常应优先使用此方法,而不是构造函数Character(char)
,因为此方法可能通过缓存频繁请求的值而在空间和时间性能上产生显着改进。此方法将始终缓存范围在'\u0000'
到'\u007F'
(包括)之间的值,并且可能缓存此范围之外的其他值。- 参数:
-
c
- 一个char值。 - 返回:
-
表示
c
的Character
实例。 - 自从:
- 1.5
-
charValue
public char charValue()返回此Character
对象的值。- 返回:
-
此对象表示的基本
char
值。
-
hashCode
public int hashCode()为此Character
返回一个哈希码;等同于调用charValue()
的结果。 -
hashCode
public static int hashCode(char value) 返回char
值的哈希码;与Character.hashCode()
兼容。- 参数:
-
value
- 要返回哈希码的char
。 - 返回:
-
char
值的哈希码值。 - 自从:
- 1.8
-
equals
将此对象与指定对象进行比较。结果为true
仅当参数不为null
且为表示与此对象相同char
值的Character
对象时。 -
toString
返回表示此Character
值的String
对象。结果是一个长度为1的字符串,其唯一组件是由此Character
对象表示的基本char
值。 -
toString
返回表示指定char
的String
对象。结果是一个长度为1的字符串,仅由指定的char
组成。- API注释:
-
此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
toString(int)
方法。 - 参数:
-
c
- 要转换的char
- 返回:
-
指定
char
的字符串表示形式 - 自版本:
- 1.4
-
toString
返回表示指定字符(Unicode代码点)的String
对象。结果是一个长度为1或2的字符串,仅由指定的codePoint
组成。- 参数:
-
codePoint
- 要转换的codePoint
- 返回:
-
指定
codePoint
的字符串表示形式 - 抛出:
-
IllegalArgumentException
- 如果指定的codePoint
不是有效的Unicode代码点。 - 自版本:
- 11
-
isValidCodePoint
public static boolean isValidCodePoint(int codePoint) 确定指定的代码点是否是有效的Unicode代码点值。- 参数:
-
codePoint
- 要测试的Unicode代码点 - 返回:
-
如果指定的代码点值在
MIN_CODE_POINT
和MAX_CODE_POINT
之间(包括边界)则返回true
;否则返回false
。 - 自版本:
- 1.5
-
isBmpCodePoint
public static boolean isBmpCodePoint(int codePoint) 确定指定的字符(Unicode代码点)是否在基本多文种平面(BMP)中。这样的代码点可以使用单个char
表示。 -
isSupplementaryCodePoint
public static boolean isSupplementaryCodePoint(int codePoint) 确定指定的字符(Unicode代码点)是否在补充字符范围内。- 参数:
-
codePoint
- 要测试的字符(Unicode代码点) - 返回:
-
如果指定的代码点在
MIN_SUPPLEMENTARY_CODE_POINT
和MAX_CODE_POINT
之间(包括边界)则返回true
;否则返回false
。 - 自版本:
- 1.5
-
isHighSurrogate
public static boolean isHighSurrogate(char ch) - 参数:
-
ch
- 要测试的char
值。 - 返回:
-
如果
char
值在MIN_HIGH_SURROGATE
和MAX_HIGH_SURROGATE
之间(包括边界)则返回true
;否则返回false
。 - 自版本:
- 1.5
- 参见:
-
isLowSurrogate
public static boolean isLowSurrogate(char ch) - 参数:
-
ch
- 要测试的char
值。 - 返回:
-
如果
char
值在MIN_LOW_SURROGATE
和MAX_LOW_SURROGATE
之间(包括边界)则返回true
;否则返回false
。 - 自版本:
- 1.5
- 参见:
-
isSurrogate
public static boolean isSurrogate(char ch) 确定给定的char
值是否是Unicode代理代码单元。这样的值本身不代表字符,而是用于在UTF-16编码中表示补充字符。
- 参数:
-
ch
- 要测试的char
值。 - 返回:
-
如果
char
值在MIN_SURROGATE
和MAX_SURROGATE
之间(包括边界)则返回true
;否则返回false
。 - 自版本:
- 1.7
-
isSurrogatePair
public static boolean isSurrogatePair(char high, char low) - 参数:
-
high
- 要测试的高代理代码值 -
low
- 要测试的低代理代码值 - 返回:
-
如果指定的高代理和低代理代码值表示有效的代理对则返回
true
;否则返回false
。 - 自版本:
- 1.5
-
charCount
public static int charCount(int codePoint) 确定表示指定字符(Unicode代码点)所需的char
值的数量。如果指定的字符等于或大于0x10000,则该方法返回2。否则,该方法返回1。此方法不验证指定的字符是否为有效的Unicode代码点。如有必要,调用方必须使用
isValidCodePoint
验证字符值。- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
- 如果字符是有效的补充字符则返回2;否则返回1。
- 自版本:
- 1.5
- 参见:
-
toCodePoint
public static int toCodePoint(char high, char low) 将指定的代理对转换为其补充代码点值。此方法不验证指定的代理对。如有必要,调用方必须使用isSurrogatePair
验证。- 参数:
-
high
- 高代理代码单元 -
low
- 低代理代码单元 - 返回:
- 由指定代理对组成的补充代码点。
- 自版本:
- 1.5
-
codePointAt
返回CharSequence
中给定索引处的代码点。如果CharSequence
中给定索引处的char
值在高代理范围内,且后续索引小于CharSequence
的长度,并且后续索引处的char
值在低代理范围内,则返回对应于此代理对的补充代码点。否则,返回给定索引处的char
值。- 参数:
-
seq
- 一系列char
值(Unicode代码单元) -
index
- 要转换为seq
中char
值(Unicode代码单元)的索引 - 返回:
- 给定索引处的Unicode代码点
- 抛出:
-
NullPointerException
- 如果seq
为null。 -
IndexOutOfBoundsException
- 如果值index
为负数或不小于seq.length()
。 - 自版本:
- 1.5
-
codePointAt
public static int codePointAt(char[] a, int index) 返回char
数组中给定索引处的代码点。如果char
数组中给定索引处的char
值在高代理范围内,且后续索引小于char
数组的长度,并且后续索引处的char
值在低代理范围内,则返回对应于此代理对的补充代码点。否则,返回给定索引处的char
值。- 参数:
-
a
-char
数组 -
index
- 要转换为char
数组中char
值(Unicode代码单元)的索引 - 返回:
- 给定索引处的Unicode代码点
- 抛出:
-
NullPointerException
- 如果a
为null。 -
IndexOutOfBoundsException
- 如果值index
为负数或不小于char
数组的长度。 - 自版本:
- 1.5
-
codePointAt
public static int codePointAt(char[] a, int index, int limit) 返回给定索引处的char
数组中的代码点,只有小于limit
的索引才能使用。如果char
数组中给定索引处的char
值在高代理范围内,接下来的索引小于limit
,并且接下来的索引处的char
值在低代理范围内,则返回对应于这个代理对的补充代码点。否则,返回给定索引处的char
值。- 参数:
-
a
-char
数组 -
index
- 要转换为char
值(Unicode代码单元)的char
数组中的索引 -
limit
- 可在char
数组中使用的最后一个数组元素之后的索引 - 返回:
- 给定索引处的Unicode代码点
- 抛出:
-
NullPointerException
- 如果a
为null。 -
IndexOutOfBoundsException
- 如果index
参数为负数或不小于limit
参数,或者如果limit
参数为负数或大于char
数组的长度。 - 自1.5起:
- 1.5
-
codePointBefore
返回CharSequence
中给定索引之前的代码点。如果CharSequence
中(index - 1)
处的char
值在低代理范围内,(index - 2)
不为负数,并且CharSequence
中(index - 2)
处的char
值在高代理范围内,则返回对应于这个代理对的补充代码点。否则,返回(index - 1)
处的char
值。- 参数:
-
seq
-CharSequence
实例 -
index
- 应返回的代码点之后的索引 - 返回:
- 给定索引之前的Unicode代码点值。
- 抛出:
-
NullPointerException
- 如果seq
为null。 -
IndexOutOfBoundsException
- 如果index
参数小于1或大于seq.length()
。 - 自1.5起:
- 1.5
-
codePointBefore
public static int codePointBefore(char[] a, int index) 返回char
数组中给定索引之前的代码点。如果char
数组中(index - 1)
处的char
值在低代理范围内,(index - 2)
不为负数,并且char
数组中(index - 2)
处的char
值在高代理范围内,则返回对应于这个代理对的补充代码点。否则,返回(index - 1)
处的char
值。- 参数:
-
a
-char
数组 -
index
- 应返回的代码点之后的索引 - 返回:
- 给定索引之前的Unicode代码点值。
- 抛出:
-
NullPointerException
- 如果a
为null。 -
IndexOutOfBoundsException
- 如果index
参数小于1或大于char
数组的长度。 - 自1.5起:
- 1.5
-
codePointBefore
public static int codePointBefore(char[] a, int index, int start) 返回char
数组中给定索引之前的代码点,只有大于或等于start
的索引才能使用。如果char
数组中(index - 1)
处的char
值在低代理范围内,(index - 2)
不小于start
,并且char
数组中(index - 2)
处的char
值在高代理范围内,则返回对应于这个代理对的补充代码点。否则,返回(index - 1)
处的char
值。- 参数:
-
a
-char
数组 -
index
- 应返回的代码点之后的索引 -
start
-char
数组中第一个数组元素的索引 - 返回:
- 给定索引之前的Unicode代码点值。
- 抛出:
-
NullPointerException
- 如果a
为null。 -
IndexOutOfBoundsException
- 如果index
参数不大于start
参数或大于char
数组的长度,或者如果start
参数为负数或不小于char
数组的长度。 - 自1.5起:
- 1.5
-
highSurrogate
public static char highSurrogate(int codePoint) 返回表示UTF-16编码中指定补充字符(Unicode代码点)的代理对之一(高代理码单元)。如果指定的字符不是补充字符,则返回未指定的char
。如果
isSupplementaryCodePoint(x)
为true
,则isHighSurrogate
(highSurrogate(x))
和toCodePoint
(highSurrogate(x),
lowSurrogate
(x)) == x
也始终为true
。- 参数:
-
codePoint
- 补充字符(Unicode代码点) - 返回:
- 用于表示UTF-16编码中字符的前导代理码单元
- 自1.7起:
- 1.7
-
lowSurrogate
public static char lowSurrogate(int codePoint) 返回表示UTF-16编码中指定补充字符(Unicode代码点)的代理对之一(低代理码单元)。如果指定的字符不是补充字符,则返回未指定的char
。如果
isSupplementaryCodePoint(x)
为true
,则isLowSurrogate
(lowSurrogate(x))
和toCodePoint
(
highSurrogate
(x), lowSurrogate(x)) == x
也始终为true
。- 参数:
-
codePoint
- 补充字符(Unicode代码点) - 返回:
- 用于表示UTF-16编码中字符的尾随代理码单元
- 自1.7起:
- 1.7
-
toChars
public static int toChars(int codePoint, char[] dst, int dstIndex) 将指定字符(Unicode代码点)转换为其UTF-16表示。如果指定的代码点是BMP(基本多文种平面或平面0)值,则相同的值存储在dst[dstIndex]
中,并返回1。如果指定的代码点是补充字符,则其代理值存储在dst[dstIndex]
(高代理)和dst[dstIndex+1]
(低代理)中,并返回2。- 参数:
-
codePoint
- 要转换的字符(Unicode代码点)。 -
dst
- 存储codePoint
的UTF-16值的char
数组。 -
dstIndex
- 存储转换值的dst
数组中的起始索引。 - 返回:
- 如果代码点是BMP代码点,则返回1,如果代码点是补充代码点,则返回2。
- 抛出:
-
IllegalArgumentException
- 如果指定的codePoint
不是有效的Unicode代码点。 -
NullPointerException
- 如果指定的dst
为null。 -
IndexOutOfBoundsException
- 如果dstIndex
为负数或不小于dst.length
,或者如果dst
在dstIndex
处没有足够的数组元素来存储结果的char
值(如果dstIndex
等于dst.length-1
且指定的codePoint
是补充字符,则高代理值不存储在dst[dstIndex]
中)。 - 自1.5起:
- 1.5
-
toChars
public static char[] toChars(int codePoint) 将指定字符(Unicode代码点)转换为存储在char
数组中的UTF-16表示。如果指定的代码点是BMP(基本多文种平面或平面0)值,则结果的char
数组与codePoint
具有相同的值。如果指定的代码点是补充代码点,则结果的char
数组具有相应的代理对。- 参数:
-
codePoint
- 一个Unicode代码点 - 返回:
-
一个具有
codePoint
的UTF-16表示的char
数组。 - 抛出:
-
IllegalArgumentException
- 如果指定的codePoint
不是有效的Unicode代码点。 - 自1.5起:
- 1.5
-
codePointCount
返回指定字符序列的文本范围中的Unicode代码点数。文本范围从指定的beginIndex
开始,延伸到索引endIndex - 1
处的char
。因此,文本范围的长度(以char
为单位)为endIndex-beginIndex
。文本范围内的不成对代理计为一个代码点。- 参数:
-
seq
- 字符序列 -
beginIndex
- 文本范围的第一个char
的索引。 -
endIndex
- 文本范围中最后一个char
之后的索引。 - 返回:
- 指定文本范围中的Unicode代码点数
- 抛出:
-
NullPointerException
- 如果seq
为null。 -
IndexOutOfBoundsException
- 如果beginIndex
为负数,或endIndex
大于给定序列的长度,或beginIndex
大于endIndex
。 - 自1.5起:
- 1.5
-
codePointCount
public static int codePointCount(char[] a, int offset, int count) 返回char
数组参数的子数组中的Unicode代码点数。offset
参数是子数组的第一个char
的索引,count
参数指定子数组中char
的长度。子数组中的不成对代理每个计为一个代码点。- 参数:
-
a
-char
数组 -
offset
- 给定char
数组中第一个char
的索引 -
count
- 子数组中char
的长度 - 返回:
- 指定子数组中的Unicode代码点数
- 抛出:
-
NullPointerException
- 如果a
为null。 -
IndexOutOfBoundsException
- 如果offset
或count
为负数,或如果offset + count
大于给定数组的长度。 - 自1.5起:
- 1.5
-
offsetByCodePoints
返回从给定index
偏移codePointOffset
代码点的字符序列中的索引。给定由index
和codePointOffset
指定的文本范围中的不成对代理每个计为一个代码点。- 参数:
-
seq
- 字符序列 -
index
- 要偏移的索引 -
codePointOffset
- 代码点的偏移量 - 返回:
- 字符序列中的索引
- 抛出:
-
NullPointerException
- 如果seq
为null。 -
IndexOutOfBoundsException
- 如果index
为负数或大于字符序列的长度,或者如果codePointOffset
为正数且以index
开头的子序列的代码点少于codePointOffset
,或者如果codePointOffset
为负数且以index
之前的子序列的代码点少于codePointOffset
的绝对值。 - 自1.5起:
- 1.5
-
offsetByCodePoints
public static int offsetByCodePoints(char[] a, int start, int count, int index, int codePointOffset) 返回从给定index
偏移codePointOffset
代码点的char
子数组中的索引。start
和count
参数指定char
数组的子数组。给定由index
和codePointOffset
指定的文本范围中的不成对代理每个计为一个代码点。- 参数:
-
a
-char
数组 -
start
- 子数组中第一个char
的索引 -
count
- 子数组中char
的长度 -
index
- 要偏移的索引 -
codePointOffset
- 代码点的偏移量 - 返回:
- 子数组中的索引
- 抛出:
-
NullPointerException
- 如果a
为null。 -
IndexOutOfBoundsException
- 如果start
或count
为负数,或如果start + count
大于给定数组的长度,或如果index
小于start
或大于start + count
,或如果codePointOffset
为正数且以index
开头并以start + count - 1
结尾的文本范围的代码点少于codePointOffset
,或如果codePointOffset
为负数且以start
开头并以index - 1
结尾的文本范围的代码点少于codePointOffset
的绝对值。 - 自1.5起:
- 1.5
-
isLowerCase
public static boolean isLowerCase(char ch) 确定指定字符是否为小写字符。如果字符的一般类别类型由
Character.getType(ch)
提供,为LOWERCASE_LETTER
,或者它具有Unicode标准定义的Other_Lowercase属性,则字符为小写。以下是小写字符的示例:
a b c d e f g h i j k l m n o p q r s t u v w x y z '\u00DF' '\u00E0' '\u00E1' '\u00E2' '\u00E3' '\u00E4' '\u00E5' '\u00E6' '\u00E7' '\u00E8' '\u00E9' '\u00EA' '\u00EB' '\u00EC' '\u00ED' '\u00EE' '\u00EF' '\u00F0' '\u00F1' '\u00F2' '\u00F3' '\u00F4' '\u00F5' '\u00F6' '\u00F8' '\u00F9' '\u00FA' '\u00FB' '\u00FC' '\u00FD' '\u00FE' '\u00FF'
许多其他Unicode字符也是小写的。
注意: 此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
isLowerCase(int)
方法。- 参数:
-
ch
- 要测试的字符。 - 返回:
-
如果字符为小写,则为
true
; 否则为false
。 - 参见:
-
isLowerCase
public static boolean isLowerCase(int codePoint) 确定指定字符(Unicode代码点)是否为小写字符。如果字符的一般类别类型由
getType(codePoint)
提供,为LOWERCASE_LETTER
,或者它具有Unicode标准定义的Other_Lowercase属性,则字符为小写。以下是小写字符的示例:
a b c d e f g h i j k l m n o p q r s t u v w x y z '\u00DF' '\u00E0' '\u00E1' '\u00E2' '\u00E3' '\u00E4' '\u00E5' '\u00E6' '\u00E7' '\u00E8' '\u00E9' '\u00EA' '\u00EB' '\u00EC' '\u00ED' '\u00EE' '\u00EF' '\u00F0' '\u00F1' '\u00F2' '\u00F3' '\u00F4' '\u00F5' '\u00F6' '\u00F8' '\u00F9' '\u00FA' '\u00FB' '\u00FC' '\u00FD' '\u00FE' '\u00FF'
许多其他Unicode字符也是小写的。
- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符为小写,则为
true
; 否则为false
。 - 自1.5起:
- 1.5
- 参见:
-
isUpperCase
public static boolean isUpperCase(char ch) 确定指定字符是否为大写字符。如果字符的一般类别类型由
Character.getType(ch)
提供,为UPPERCASE_LETTER
,或者它具有Unicode标准定义的Other_Uppercase属性,则字符为大写。以下是大写字符的示例:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z '\u00C0' '\u00C1' '\u00C2' '\u00C3' '\u00C4' '\u00C5' '\u00C6' '\u00C7' '\u00C8' '\u00C9' '\u00CA' '\u00CB' '\u00CC' '\u00CD' '\u00CE' '\u00CF' '\u00D0' '\u00D1' '\u00D2' '\u00D3' '\u00D4' '\u00D5' '\u00D6' '\u00D8' '\u00D9' '\u00DA' '\u00DB' '\u00DC' '\u00DD' '\u00DE'
许多其他Unicode字符也是大写的。
注意: 此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
isUpperCase(int)
方法。- 参数:
-
ch
- 要测试的字符。 - 返回:
-
如果字符为大写,则为
true
; 否则为false
。 - 自1.0起:
- 1.0
- 参见:
-
isUpperCase
public static boolean isUpperCase(int codePoint) 确定指定字符(Unicode代码点)是否为大写字符。如果字符的一般类别类型由
getType(codePoint)
提供,为UPPERCASE_LETTER
,或者它具有Unicode标准定义的Other_Uppercase属性,则字符为大写。以下是大写字符的示例:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z '\u00C0' '\u00C1' '\u00C2' '\u00C3' '\u00C4' '\u00C5' '\u00C6' '\u00C7' '\u00C8' '\u00C9' '\u00CA' '\u00CB' '\u00CC' '\u00CD' '\u00CE' '\u00CF' '\u00D0' '\u00D1' '\u00D2' '\u00D3' '\u00D4' '\u00D5' '\u00D6' '\u00D8' '\u00D9' '\u00DA' '\u00DB' '\u00DC' '\u00DD' '\u00DE'
许多其他Unicode字符也是大写的。
- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符为大写,则为
true
; 否则为false
。 - 自1.5起:
- 1.5
- 参见:
-
isTitleCase
public static boolean isTitleCase(char ch) 确定指定的字符是否是标题大小写字符。如果字符的一般类别类型由
Character.getType(ch)
提供,并且是TITLECASE_LETTER
,则字符是标题大小写字符。有些字符看起来像一对拉丁字母。例如,有一个大写字母看起来像“LJ”,有一个相应的小写字母看起来像“lj”。第三种形式,看起来像“Lj”,是在以小写字母和首字母大写的形式呈现单词时使用的适当形式,比如书名。
以下是此方法返回
true
的一些Unicode字符:带CARON的拉丁大写字母D和小写字母Z
带小写字母J的拉丁大写字母L
带小写字母J的拉丁大写字母N
带小写字母Z的拉丁大写字母D
许多其他Unicode字符也是标题大小写字符。
注意:此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
isTitleCase(int)
方法。- 参数:
-
ch
- 要测试的字符。 - 返回:
-
如果字符是标题大小写字符,则返回
true
;否则返回false
。 - 自:
- 1.0.2
- 参见:
-
isTitleCase
public static boolean isTitleCase(int codePoint) 确定指定的字符(Unicode代码点)是否是标题大小写字符。如果字符的一般类别类型由
getType(codePoint)
提供,并且是TITLECASE_LETTER
,则字符是标题大小写字符。有些字符看起来像一对拉丁字母。例如,有一个大写字母看起来像“LJ”,有一个相应的小写字母看起来像“lj”。第三种形式,看起来像“Lj”,是在以小写字母和首字母大写的形式呈现单词时使用的适当形式,比如书名。
以下是此方法返回
true
的一些Unicode字符:带CARON的拉丁大写字母D和小写字母Z
带小写字母J的拉丁大写字母L
带小写字母J的拉丁大写字母N
带小写字母Z的拉丁大写字母D
许多其他Unicode字符也是标题大小写字符。
- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符是标题大小写字符,则返回
true
;否则返回false
。 - 自:
- 1.5
- 参见:
-
isDigit
public static boolean isDigit(char ch) 确定指定的字符是否是数字。如果字符的一般类别类型由
Character.getType(ch)
提供,并且是DECIMAL_DIGIT_NUMBER
,则字符是数字。一些包含数字的Unicode字符范围:
'\u0030'
到'\u0039'
,ISO-LATIN-1数字('0'
到'9'
)'\u0660'
到'\u0669'
,阿拉伯-印度数字'\u06F0'
到'\u06F9'
,扩展阿拉伯-印度数字'\u0966'
到'\u096F'
,天城数字'\uFF10'
到'\uFF19'
,全角数字
注意:此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
isDigit(int)
方法。- 参数:
-
ch
- 要测试的字符。 - 返回:
-
如果字符是数字,则返回
true
;否则返回false
。 - 参见:
-
isDigit
public static boolean isDigit(int codePoint) 确定指定的字符(Unicode代码点)是否是数字。如果字符的一般类别类型由
getType(codePoint)
提供,并且是DECIMAL_DIGIT_NUMBER
,则字符是数字。一些包含数字的Unicode字符范围:
'\u0030'
到'\u0039'
,ISO-LATIN-1数字('0'
到'9'
)'\u0660'
到'\u0669'
,阿拉伯-印度数字'\u06F0'
到'\u06F9'
,扩展阿拉伯-印度数字'\u0966'
到'\u096F'
,天城数字'\uFF10'
到'\uFF19'
,全角数字
- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符是数字,则返回
true
;否则返回false
。 - 自:
- 1.5
- 参见:
-
isDefined
public static boolean isDefined(char ch) 确定字符是否在Unicode中定义。如果以下至少有一项为真,则字符被定义:
- 它在UnicodeData文件中有一个条目。
- 它在UnicodeData文件定义的范围内有一个值。
注意:此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
isDefined(int)
方法。- 参数:
-
ch
- 要测试的字符 - 返回:
-
如果字符在Unicode中具有定义的含义,则返回
true
;否则返回false
。 - 自:
- 1.0.2
- 参见:
-
isDefined
public static boolean isDefined(int codePoint) 确定字符(Unicode代码点)是否在Unicode中定义。如果以下至少有一项为真,则字符被定义:
- 它在UnicodeData文件中有一个条目。
- 它在UnicodeData文件定义的范围内有一个值。
- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符在Unicode中具有定义的含义,则返回
true
;否则返回false
。 - 自:
- 1.5
- 参见:
-
isLetter
public static boolean isLetter(char ch) 确定指定的字符是否是字母。如果字符的一般类别类型由
Character.getType(ch)
提供,并且是以下任何一种,则字符被视为字母:UPPERCASE_LETTER
LOWERCASE_LETTER
TITLECASE_LETTER
MODIFIER_LETTER
OTHER_LETTER
注意:此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
isLetter(int)
方法。- 参数:
-
ch
- 要测试的字符。 - 返回:
-
如果字符是字母,则返回
true
;否则返回false
。 - 参见:
-
isLetter
public static boolean isLetter(int codePoint) 确定指定的字符(Unicode代码点)是否是字母。如果字符的一般类别类型由
getType(codePoint)
提供,并且是以下任何一种,则字符被视为字母:UPPERCASE_LETTER
LOWERCASE_LETTER
TITLECASE_LETTER
MODIFIER_LETTER
OTHER_LETTER
- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符是字母,则返回
true
; 否则返回false
。 - 自版本:
- 1.5
- 参见:
-
isLetterOrDigit
public static boolean isLetterOrDigit(char ch) 确定指定的字符是否为字母或数字。如果
Character.isLetter(char ch)
或Character.isDigit(char ch)
中的任一方法对该字符返回true
,则该字符被视为字母或数字。注意: 该方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
isLetterOrDigit(int)
方法。- 参数:
-
ch
- 要测试的字符。 - 返回:
-
如果字符是字母或数字,则返回
true
; 否则返回false
。 - 自版本:
- 1.0.2
- 参见:
-
isLetterOrDigit
public static boolean isLetterOrDigit(int codePoint) 确定指定的字符(Unicode代码点)是否为字母或数字。如果
isLetter(codePoint)
或isDigit(codePoint)
中的任一方法对该字符返回true
,则该字符被视为字母或数字。- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符是字母或数字,则返回
true
; 否则返回false
。 - 自版本:
- 1.5
- 参见:
-
isJavaLetter
Deprecated.Replaced by isJavaIdentifierStart(char).确定指定的字符是否可作为Java标识符的第一个字符。仅当以下条件之一为真时,字符才能作为Java标识符的第一个字符:
isLetter(ch)
返回true
getType(ch)
返回LETTER_NUMBER
ch
是货币符号(例如'$'
)ch
是连接标点字符(例如'_'
)
- 参数:
-
ch
- 要测试的字符。 - 返回:
-
如果字符可以作为Java标识符的第一个字符,则返回
true
; 否则返回false
。 - 自版本:
- 1.0.2
- 参见:
-
isJavaLetterOrDigit
Deprecated.Replaced by isJavaIdentifierPart(char).确定指定的字符是否可以作为Java标识符的非第一个字符。仅当以下条件之一为真时,字符才能作为Java标识符的一部分:
- 它是字母
- 它是货币符号(例如
'$'
) - 它是连接标点字符(例如
'_'
) - 它是数字
- 它是数字字母(例如罗马数字字符)
- 它是组合标记
- 它是非间隔标记
isIdentifierIgnorable
对该字符返回true
- 参数:
-
ch
- 要测试的字符。 - 返回:
-
如果字符可以作为Java标识符的一部分,则返回
true
; 否则返回false
。 - 自版本:
- 1.0.2
- 参见:
-
isAlphabetic
public static boolean isAlphabetic(int codePoint) 确定指定的字符(Unicode代码点)是否为字母。如果字符的一般类别类型由
getType(codePoint)
提供,并且是以下类型之一,则该字符被视为字母:UPPERCASE_LETTER
LOWERCASE_LETTER
TITLECASE_LETTER
MODIFIER_LETTER
OTHER_LETTER
LETTER_NUMBER
- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符是Unicode字母字符,则返回
true
; 否则返回false
。 - 自版本:
- 1.7
-
isIdeographic
public static boolean isIdeographic(int codePoint) 确定指定的字符(Unicode代码点)是否为CJKV(中文、日文、韩文和越南文)表意字符,如Unicode标准所定义。- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符是Unicode表意字符,则返回
true
; 否则返回false
。 - 自版本:
- 1.7
-
isJavaIdentifierStart
public static boolean isJavaIdentifierStart(char ch) 确定指定的字符是否可作为Java标识符的第一个字符。仅当以下条件之一为真时,字符才能作为Java标识符的第一个字符:
isLetter(ch)
返回true
getType(ch)
返回LETTER_NUMBER
ch
是货币符号(例如'$'
)ch
是连接标点字符(例如'_'
)
注意: 该方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
isJavaIdentifierStart(int)
方法。- 参数:
-
ch
- 要测试的字符。 - 返回:
-
如果字符可以作为Java标识符的第一个字符,则返回
true
; 否则返回false
。 - 自版本:
- 1.1
- 参见:
-
isJavaIdentifierStart
public static boolean isJavaIdentifierStart(int codePoint) 确定字符(Unicode代码点)是否可作为Java标识符的第一个字符。仅当以下条件之一为真时,字符才能作为Java标识符的第一个字符:
isLetter(codePoint)
返回true
getType(codePoint)
返回LETTER_NUMBER
- 引用的字符是货币符号(例如
'$'
) - 引用的字符是连接标点字符(例如
'_'
)
- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符可以作为Java标识符的第一个字符,则返回
true
; 否则返回false
。 - 自版本:
- 1.5
- 参见:
-
isJavaIdentifierPart
public static boolean isJavaIdentifierPart(char ch) 确定指定字符是否可以作为Java标识符的一部分,除了第一个字符之外。如果以下任一条件为真,则字符可以作为Java标识符的一部分:
- 它是一个字母
- 它是一个货币符号(如
'$'
) - 它是一个连接标点字符(如
'_'
) - 它是一个数字
- 它是一个数字字母(如罗马数字字符)
- 它是一个组合标记
- 它是一个非间距标记
isIdentifierIgnorable
对该字符返回true
注意:此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
isJavaIdentifierPart(int)
方法。- 参数:
-
ch
- 要测试的字符。 - 返回:
-
如果字符可以作为Java标识符的一部分,则返回
true
;否则返回false
。 - 自版本:
- 1.1
- 参见:
-
isJavaIdentifierPart
public static boolean isJavaIdentifierPart(int codePoint) 确定字符(Unicode代码点)是否可以作为Java标识符的一部分,除了第一个字符之外。如果以下任一条件为真,则字符可以作为Java标识符的一部分:
- 它是一个字母
- 它是一个货币符号(如
'$'
) - 它是一个连接标点字符(如
'_'
) - 它是一个数字
- 它是一个数字字母(如罗马数字字符)
- 它是一个组合标记
- 它是一个非间距标记
isIdentifierIgnorable(codePoint)
对该代码点返回true
- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符可以作为Java标识符的一部分,则返回
true
;否则返回false
。 - 自版本:
- 1.5
- 参见:
-
isUnicodeIdentifierStart
public static boolean isUnicodeIdentifierStart(char ch) 确定指定字符是否可以作为Unicode标识符中的第一个字符。如果以下条件之一为真,则字符可以作为Unicode标识符的第一个字符:
isLetter(ch)
返回true
getType(ch)
返回LETTER_NUMBER
。- 它是一个
Other_ID_Start
字符。
此方法符合Unicode标准的UAX31-R1:默认标识符要求,具有以下UAX31的配置文件:
Start := ID_Start + 'VERTICAL TILDE' (U+2E2F)
'VERTICAL TILDE'
被添加到Start
以实现向后兼容性。注意:此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
isUnicodeIdentifierStart(int)
方法。- 参数:
-
ch
- 要测试的字符。 - 返回:
-
如果字符可以作为Unicode标识符的第一个字符,则返回
true
;否则返回false
。 - 自版本:
- 1.1
- 外部规范
- 参见:
-
isUnicodeIdentifierStart
public static boolean isUnicodeIdentifierStart(int codePoint) 确定指定字符(Unicode代码点)是否可以作为Unicode标识符中的第一个字符。如果以下条件之一为真,则字符可以作为Unicode标识符的第一个字符:
isLetter(codePoint)
返回true
getType(codePoint)
返回LETTER_NUMBER
。- 它是一个
Other_ID_Start
字符。
此方法符合Unicode标准的UAX31-R1:默认标识符要求,具有以下UAX31的配置文件:
Start := ID_Start + 'VERTICAL TILDE' (U+2E2F)
'VERTICAL TILDE'
被添加到Start
以实现向后兼容性。- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符可以作为Unicode标识符的第一个字符,则返回
true
;否则返回false
。 - 自版本:
- 1.5
- 外部规范
- 参见:
-
isUnicodeIdentifierPart
public static boolean isUnicodeIdentifierPart(char ch) 确定指定字符是否可以作为Unicode标识符的一部分,除了第一个字符之外。如果以下任一语句为真,则字符可以作为Unicode标识符的一部分:
- 它是一个字母
- 它是一个连接标点字符(如
'_'
) - 它是一个数字
- 它是一个数字字母(如罗马数字字符)
- 它是一个组合标记
- 它是一个非间距标记
isIdentifierIgnorable
对该字符返回true
- 它是一个
Other_ID_Start
字符 - 它是一个
Other_ID_Continue
字符
此方法符合Unicode标准的UAX31-R1:默认标识符要求,具有以下UAX31的配置文件:
Continue := Start + ID_Continue + ignorable Medial := empty ignorable := isIdentifierIgnorable(char)对该字符返回true
ignorable
被添加到Continue
以实现向后兼容性。注意:此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
isUnicodeIdentifierPart(int)
方法。- 参数:
-
ch
- 要测试的字符。 - 返回:
-
如果字符可以作为Unicode标识符的一部分,则返回
true
;否则返回false
。 - 自版本:
- 1.1
- 外部规范
- 参见:
-
isUnicodeIdentifierPart
public static boolean isUnicodeIdentifierPart(int codePoint) 确定指定字符(Unicode代码点)是否可以作为Unicode标识符的一部分,除了第一个字符之外。如果以下任一语句为真,则字符可以作为Unicode标识符的一部分:
- 它是一个字母
- 它是一个连接标点字符(如
'_'
) - 它是一个数字
- 它是一个数字字母(如罗马数字字符)
- 它是一个组合标记
- 它是一个非间距标记
isIdentifierIgnorable
对该字符返回true
- 它是一个
Other_ID_Start
字符 - 它是一个
Other_ID_Continue
字符
此方法符合Unicode标准的UAX31-R1:默认标识符要求,具有以下UAX31的配置文件:
Continue := Start + ID_Continue + ignorable Medial := empty ignorable := isIdentifierIgnorable(int)对该字符返回true
ignorable
被添加到Continue
以实现向后兼容性。- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符可能是Unicode标识符的一部分,则返回
true
; 否则返回false
。 - 自版本:
- 1.5
- 外部规范
- 另请参阅:
-
isIdentifierIgnorable
public static boolean isIdentifierIgnorable(char ch) 确定指定字符是否应被视为Java标识符或Unicode标识符中的可忽略字符。以下Unicode字符在Java标识符或Unicode标识符中是可忽略的:
- 不是空格的ISO控制字符
'\u0000'
到'\u0008'
'\u000E'
到'\u001B'
'\u007F'
到'\u009F'
- 所有具有
FORMAT
通用类别值的字符
注意: 此方法无法处理 补充字符。要支持所有Unicode字符,包括补充字符,请使用
isIdentifierIgnorable(int)
方法。- 参数:
-
ch
- 要测试的字符。 - 返回:
-
如果字符是可忽略的控制字符,可能是Java或Unicode标识符的一部分,则返回
true
; 否则返回false
。 - 自版本:
- 1.1
- 另请参阅:
- 不是空格的ISO控制字符
-
isIdentifierIgnorable
public static boolean isIdentifierIgnorable(int codePoint) 确定指定字符(Unicode代码点)是否应被视为Java标识符或Unicode标识符中的可忽略字符。以下Unicode字符在Java标识符或Unicode标识符中是可忽略的:
- 不是空格的ISO控制字符
'\u0000'
到'\u0008'
'\u000E'
到'\u001B'
'\u007F'
到'\u009F'
- 所有具有
FORMAT
通用类别值的字符
- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符是可忽略的控制字符,可能是Java或Unicode标识符的一部分,则返回
true
; 否则返回false
。 - 自版本:
- 1.5
- 另请参阅:
- 不是空格的ISO控制字符
-
isEmoji
public static boolean isEmoji(int codePoint) 确定指定字符(Unicode代码点)是否为Emoji。如果字符具有在Unicode Emoji(技术标准#51)中定义的
Emoji
属性,则被视为Emoji。- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符是Emoji,则返回
true
; 否则返回false
。 - 自版本:
- 21
-
isEmojiPresentation
public static boolean isEmojiPresentation(int codePoint) 确定指定字符(Unicode代码点)是否具有默认的Emoji展示属性。如果字符具有在Unicode Emoji(技术标准#51)中定义的
Emoji_Presentation
属性,则被视为具有Emoji展示属性。- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符具有Emoji展示属性,则返回
true
; 否则返回false
。 - 自版本:
- 21
-
isEmojiModifier
public static boolean isEmojiModifier(int codePoint) 确定指定字符(Unicode代码点)是否为Emoji修饰符。如果字符具有在Unicode Emoji(技术标准#51)中定义的
Emoji_Modifier
属性,则被视为Emoji修饰符。- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符是Emoji修饰符,则返回
true
; 否则返回false
。 - 自版本:
- 21
-
isEmojiModifierBase
public static boolean isEmojiModifierBase(int codePoint) 确定指定字符(Unicode代码点)是否为Emoji修饰符基础。如果字符具有在Unicode Emoji(技术标准#51)中定义的
Emoji_Modifier_Base
属性,则被视为Emoji修饰符基础。- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符是Emoji修饰符基础,则返回
true
; 否则返回false
。 - 自版本:
- 21
-
isEmojiComponent
public static boolean isEmojiComponent(int codePoint) 确定指定字符(Unicode代码点)是否为Emoji组件。如果字符具有在Unicode Emoji(技术标准#51)中定义的
Emoji_Component
属性,则被视为Emoji组件。- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符是Emoji组件,则返回
true
; 否则返回false
。 - 自版本:
- 21
-
isExtendedPictographic
public static boolean isExtendedPictographic(int codePoint) 确定指定字符(Unicode代码点)是否为扩展象形文字。如果字符具有在Unicode Emoji(技术标准#51)中定义的
Extended_Pictographic
属性,则被视为扩展象形文字。- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符是扩展象形文字,则返回
true
; 否则返回false
。 - 自版本:
- 21
-
toLowerCase
public static char toLowerCase(char ch) 使用UnicodeData文件中的大小写映射信息将字符参数转换为小写。请注意,
Character.isLowerCase(Character.toLowerCase(ch))
并不总是对某些字符范围返回true
,特别是那些符号或表意文字。通常应使用
String.toLowerCase()
将字符映射为小写。与Character
大小写映射方法相比,String
大小写映射方法具有几个优点。String
大小写映射方法可以执行区域设置敏感的映射,上下文敏感的映射和1:M字符映射,而Character
大小写映射方法则不能。注意: 此方法无法处理 补充字符。要支持所有Unicode字符,包括补充字符,请使用
toLowerCase(int)
方法。- 参数:
-
ch
- 要转换的字符。 - 返回:
- 字符的小写等效项,如果有的话; 否则返回字符本身。
- 另请参阅:
-
toLowerCase
public static int toLowerCase(int codePoint) 使用UnicodeData文件中的大小写映射信息将字符(Unicode代码点)参数转换为小写。请注意,
Character.isLowerCase(Character.toLowerCase(codePoint))
并不总是对某些字符范围返回true
,特别是那些符号或表意文字。通常应使用
String.toLowerCase()
将字符映射为小写。与Character
大小写映射方法相比,String
大小写映射方法具有几个优点。String
大小写映射方法可以执行区域设置敏感的映射,上下文敏感的映射和1:M字符映射,而Character
大小写映射方法则不能。- 参数:
-
codePoint
- 要转换的字符(Unicode代码点)。 - 返回:
- 字符(Unicode代码点)的小写等效项,如果有的话; 否则返回字符本身。
- 自版本:
- 1.5
- 另请参阅:
-
toUpperCase
public static char toUpperCase(char ch) 将字符参数使用UnicodeData文件中的大小写映射信息转换为大写形式。请注意,对于某些字符范围,特别是符号或表意文字,
Character.isUpperCase(Character.toUpperCase(ch))
并不总是返回true
。通常应使用
String.toUpperCase()
将字符映射为大写形式。与Character
大小写映射方法相比,String
大小写映射方法具有几个优点。String
大小写映射方法可以执行区域设置敏感的映射,上下文敏感的映射和1:M字符映射,而Character
大小写映射方法则不能。注意:此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
toUpperCase(int)
方法。- 参数:
-
ch
- 要转换的字符。 - 返回:
- 字符的大写形式,如果有的话;否则返回字符本身。
- 另请参见:
-
toUpperCase
public static int toUpperCase(int codePoint) 使用UnicodeData文件中的大小写映射信息,将字符(Unicode代码点)参数转换为大写形式。请注意,对于某些字符范围,特别是符号或表意文字,
Character.isUpperCase(Character.toUpperCase(codePoint))
并不总是返回true
。通常应使用
String.toUpperCase()
将字符映射为大写形式。与Character
大小写映射方法相比,String
大小写映射方法具有几个优点。String
大小写映射方法可以执行区域设置敏感的映射,上下文敏感的映射和1:M字符映射,而Character
大小写映射方法则不能。- 参数:
-
codePoint
- 要转换的字符(Unicode代码点)。 - 返回:
- 字符的大写形式,如果有的话;否则返回字符本身。
- 自版本:
- 1.5
- 另请参见:
-
toTitleCase
public static char toTitleCase(char ch) 使用UnicodeData文件中的大小写映射信息,将字符参数转换为标题大小写形式。如果字符没有明确的标题大小写映射,并且不是根据UnicodeData本身是标题大小写字符,则将大写映射作为等效的标题大小写映射返回。如果char
参数已经是标题大小写char
,则将返回相同的char
值。请注意,对于某些字符范围,
Character.isTitleCase(Character.toTitleCase(ch))
并不总是返回true
。注意:此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
toTitleCase(int)
方法。- 参数:
-
ch
- 要转换的字符。 - 返回:
- 字符的标题大小写形式,如果有的话;否则返回字符本身。
- 自版本:
- 1.0.2
- 另请参见:
-
toTitleCase
public static int toTitleCase(int codePoint) 使用UnicodeData文件中的大小写映射信息,将字符(Unicode代码点)参数转换为标题大小写形式。如果字符没有明确的标题大小写映射,并且不是根据UnicodeData本身是标题大小写字符,则将大写映射作为等效的标题大小写映射返回。如果字符参数已经是标题大小写字符,则将返回相同的字符值。请注意,对于某些字符范围,
Character.isTitleCase(Character.toTitleCase(codePoint))
并不总是返回true
。- 参数:
-
codePoint
- 要转换的字符(Unicode代码点)。 - 返回:
- 字符的标题大小写形式,如果有的话;否则返回字符本身。
- 自版本:
- 1.5
- 另请参见:
-
digit
public static int digit(char ch, int radix) 返回指定基数中字符ch
的数值。如果基数不在范围
MIN_RADIX
≤radix
≤MAX_RADIX
内,或者ch
的值在指定基数中不是有效数字,则返回-1
。如果字符是有效数字,则至少以下列情况之一为真:- 方法
isDigit
对字符为true
,并且字符的Unicode十进制数字值(或其单字符分解)小于指定基数。在这种情况下,返回十进制数字值。 - 字符是大写拉丁字母
'A'
到'Z'
之间的一个,并且其代码小于radix + 'A' - 10
。在这种情况下,返回ch - 'A' + 10
。 - 字符是小写拉丁字母
'a'
到'z'
之间的一个,并且其代码小于radix + 'a' - 10
。在这种情况下,返回ch - 'a' + 10
。 - 字符是全角大写拉丁字母A(
'\uFF21'
)到Z('\uFF3A'
)之间的一个,并且其代码小于radix + '\uFF21' - 10
。在这种情况下,返回ch - '\uFF21' + 10
。 - 字符是全角小写拉丁字母a(
'\uFF41'
)到z('\uFF5A'
)之间的一个,并且其代码小于radix + '\uFF41' - 10
。在这种情况下,返回ch - '\uFF41' + 10
。
注意:此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
digit(int, int)
方法。- 参数:
-
ch
- 要转换的字符。 -
radix
- 基数。 - 返回:
- 字符在指定基数中表示的数值。
- 另请参见:
- 方法
-
digit
public static int digit(int codePoint, int radix) 返回指定基数中指定字符(Unicode代码点)的数值。如果基数不在范围
MIN_RADIX
≤radix
≤MAX_RADIX
内,或者字符在指定基数中不是有效数字,则返回-1
。如果字符是有效数字,则至少以下列情况之一为真:- 方法
isDigit(codePoint)
对字符为true
,并且字符的Unicode十进制数字值(或其单字符分解)小于指定基数。在这种情况下,返回十进制数字值。 - 字符是大写拉丁字母
'A'
到'Z'
之间的一个,并且其代码小于radix + 'A' - 10
。在这种情况下,返回codePoint - 'A' + 10
。 - 字符是小写拉丁字母
'a'
到'z'
之间的一个,并且其代码小于radix + 'a' - 10
。在这种情况下,返回codePoint - 'a' + 10
。 - 字符是全角大写拉丁字母A(
'\uFF21'
)到Z('\uFF3A'
)之间的一个,并且其代码小于radix + '\uFF21' - 10
。在这种情况下,返回codePoint - '\uFF21' + 10
。 - 字符是全角小写拉丁字母a(
'\uFF41'
)到z('\uFF5A'
)之间的一个,并且其代码小于radix + '\uFF41'- 10
。在这种情况下,返回codePoint - '\uFF41' + 10
。
- 参数:
-
codePoint
- 要转换的字符(Unicode代码点)。 -
radix
- 基数。 - 返回:
- 字符在指定基数中表示的数值。
- 自版本:
- 1.5
- 另请参见:
- 方法
-
getNumericValue
public static int getNumericValue(char ch) 返回指定Unicode字符表示的int
值。例如,字符'\u216C'
(罗马数字五十)将返回一个值为50的int。大写字母A-Z的大写形式(
'\u0041'
到'\u005A'
)、小写形式('\u0061'
到'\u007A'
)和全角变体形式('\uFF21'
到'\uFF3A'
和'\uFF41'
到'\uFF5A'
)的字母具有从10到35的数值。这与Unicode规范无关,Unicode规范不为这些char
值分配数值。如果字符没有数值,则返回-1。如果字符具有无法表示为非负整数的数值(例如,分数值),则返回-2。
注意:此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
getNumericValue(int)
方法。- 参数:
-
ch
- 要转换的字符。 - 返回:
-
字符的数值,作为非负的
int
值;如果字符具有数值但该值无法表示为非负的int
值,则返回-2;如果字符没有数值,则返回-1。 - 自版本:
- 1.1
- 另请参见:
-
getNumericValue
public static int getNumericValue(int codePoint) 返回指定字符(Unicode代码点)表示的int
值。例如,字符'\u216C'
(罗马数字五十)将返回一个值为50的int
。大写字母A-Z(
'\u0041'
到'\u005A'
)、小写字母('\u0061'
到'\u007A'
)和全角变体('\uFF21'
到'\uFF3A'
和'\uFF41'
到'\uFF5A'
)的字符具有从10到35的数值。这与Unicode规范无关,Unicode规范不为这些char
值分配数值。如果字符没有数值,则返回-1。如果字符具有无法表示为非负整数的数值(例如,分数值),则返回-2。
- 参数:
-
codePoint
- 要转换的字符(Unicode代码点)。 - 返回:
-
字符的数值,作为非负
int
值;如果字符具有数值但该值无法表示为非负int
值,则返回-2;如果字符没有数值,则返回-1。 - 自版本:
- 1.5
- 另请参阅:
-
isSpace
Deprecated.Replaced by isWhitespace(char).确定指定字符是否为ISO-LATIN-1空白字符。此方法仅对以下五个字符返回true
:字符 代码 名称 '\t'
U+0009
水平制表符
'\n'
U+000A
换行符
'\f'
U+000C
换页符
'\r'
U+000D
回车符
' '
U+0020
空格
- 参数:
-
ch
- 要测试的字符。 - 返回:
-
如果字符是ISO-LATIN-1空白字符,则返回
true
;否则返回false
。 - 另请参阅:
-
isSpaceChar
public static boolean isSpaceChar(char ch) 确定指定字符是否为Unicode空格字符。如果字符的一般类别类型是以下之一,则将其视为空格字符:SPACE_SEPARATOR
LINE_SEPARATOR
PARAGRAPH_SEPARATOR
注意:此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
isSpaceChar(int)
方法。- 参数:
-
ch
- 要测试的字符。 - 返回:
-
如果字符是空格字符,则返回
true
;否则返回false
。 - 自版本:
- 1.1
- 另请参阅:
-
isSpaceChar
public static boolean isSpaceChar(int codePoint) 确定指定字符(Unicode代码点)是否为Unicode空格字符。如果字符的一般类别类型是以下之一,则将其视为空格字符:- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符是空格字符,则返回
true
;否则返回false
。 - 自版本:
- 1.5
- 另请参阅:
-
isWhitespace
public static boolean isWhitespace(char ch) 确定指定字符是否为Java定义的空白字符。只有当字符满足以下条件之一时,才是Java空白字符:- 它是Unicode空格字符(
SPACE_SEPARATOR
、LINE_SEPARATOR
或PARAGRAPH_SEPARATOR
),但不是非间断空格('\u00A0'
、'\u2007'
、'\u202F'
)。 - 它是
'\t'
,U+0009水平制表符。 - 它是
'\n'
,U+000A换行符。 - 它是
'\u000B'
,U+000B垂直制表符。 - 它是
'\f'
,U+000C换页符。 - 它是
'\r'
,U+000D回车符。 - 它是
'\u001C'
,U+001C文件分隔符。 - 它是
'\u001D'
,U+001D组分隔符。 - 它是
'\u001E'
,U+001E记录分隔符。 - 它是
'\u001F'
,U+001F单元分隔符。
注意:此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
isWhitespace(int)
方法。- 参数:
-
ch
- 要测试的字符。 - 返回:
-
如果字符是Java空白字符,则返回
true
;否则返回false
。 - 自版本:
- 1.1
- 另请参阅:
- 它是Unicode空格字符(
-
isWhitespace
public static boolean isWhitespace(int codePoint) 确定指定字符(Unicode代码点)是否为Java定义的空白字符。只有当字符满足以下条件之一时,才是Java空白字符:- 它是Unicode空格字符(
SPACE_SEPARATOR
、LINE_SEPARATOR
或PARAGRAPH_SEPARATOR
),但不是非间断空格('\u00A0'
、'\u2007'
、'\u202F'
)。 - 它是
'\t'
,U+0009水平制表符。 - 它是
'\n'
,U+000A换行符。 - 它是
'\u000B'
,U+000B垂直制表符。 - 它是
'\f'
,U+000C换页符。 - 它是
'\r'
,U+000D回车符。 - 它是
'\u001C'
,U+001C文件分隔符。 - 它是
'\u001D'
,U+001D组分隔符。 - 它是
'\u001E'
,U+001E记录分隔符。 - 它是
'\u001F'
,U+001F单元分隔符。
- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符是Java空白字符,则返回
true
;否则返回false
。 - 自版本:
- 1.5
- 另请参阅:
- 它是Unicode空格字符(
-
isISOControl
public static boolean isISOControl(char ch) 确定指定字符是否为ISO控制字符。如果字符的代码在'\u0000'
到'\u001F'
或'\u007F'
到'\u009F'
范围内,则将其视为ISO控制字符。注意:此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
isISOControl(int)
方法。- 参数:
-
ch
- 要测试的字符。 - 返回:
-
如果字符是ISO控制字符,则返回
true
;否则返回false
。 - 自版本:
- 1.1
- 另请参阅:
-
isISOControl
public static boolean isISOControl(int codePoint) 确定引用字符(Unicode代码点)是否为ISO控制字符。如果字符的代码在'\u0000'
到'\u001F'
或'\u007F'
到'\u009F'
范围内,则将其视为ISO控制字符。- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
如果字符是ISO控制字符,则返回
true
;否则返回false
。 - 自版本:
- 1.5
- 另请参阅:
-
getType
public static int getType(char ch) 返回指定字符的一般类别的值。注意:此方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
getType(int)
方法。- 参数:
-
ch
- 要测试的字符。 - 返回:
-
代表字符通用类别的
int
值。 - 自版本:
- 1.1
- 另请参阅:
-
getType
public static int getType(int codePoint) 返回表示字符通用类别的值。- 参数:
-
codePoint
- 要测试的字符(Unicode代码点)。 - 返回:
-
代表字符通用类别的
int
值。 - 自版本:
- 1.5
- 另请参阅:
-
forDigit
public static char forDigit(int digit, int radix) 确定指定基数中特定数字的字符表示。如果radix
的值不是有效基数,或者digit
的值不是指定基数中的有效数字,则返回空字符('\u0000'
)。radix
参数有效的条件是它大于或等于MIN_RADIX
且小于或等于MAX_RADIX
。如果digit
参数有效,则0 <= digit < radix
。如果数字小于10,则返回
'0' + digit
。否则,返回值'a' + digit - 10
。- 参数:
-
digit
- 要转换为字符的数字。 -
radix
- 基数。 - 返回:
-
指定基数中指定数字的
char
表示。 - 另请参阅:
-
getDirectionality
public static byte getDirectionality(char ch) 返回给定字符的Unicode方向性属性。字符方向性用于计算文本的视觉顺序。未定义char
值的方向性值为DIRECTIONALITY_UNDEFINED
。注意: 该方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
getDirectionality(int)
方法。- 参数:
-
ch
- 请求其方向性属性的char
。 - 返回:
-
char
值的方向性属性。 - 自版本:
- 1.4
- 另请参阅:
-
getDirectionality
public static byte getDirectionality(int codePoint) 返回给定字符(Unicode代码点)的Unicode方向性属性。字符方向性用于计算文本的视觉顺序。未定义字符的方向性值为DIRECTIONALITY_UNDEFINED
。- 参数:
-
codePoint
- 请求方向性属性的字符(Unicode代码点)。 - 返回:
- 字符的方向性属性。
- 自版本:
- 1.5
- 参见:
-
isMirrored
public static boolean isMirrored(char ch) 确定字符是否根据Unicode规范进行镜像。当在从右到左的文本中显示时,镜像字符的字形应水平镜像。例如,'\u0028'
左括号被语义定义为一个开括号。在从左到右的文本中,它将显示为"(",但在从右到左的文本中将显示为")"。注意: 该方法无法处理补充字符。要支持所有Unicode字符,包括补充字符,请使用
isMirrored(int)
方法。- 参数:
-
ch
- 请求镜像属性的char
- 返回:
-
如果字符是镜像的,则返回
true
,如果字符不是镜像的或未定义,则返回false
。 - 自版本:
- 1.4
-
isMirrored
public static boolean isMirrored(int codePoint) 根据Unicode规范确定指定字符(Unicode代码点)是否被镜像。当在从右到左的文本中显示时,镜像字符的字形应水平镜像。例如,'\u0028'
左括号被语义定义为一个开括号。在从左到右的文本中,它将显示为"(",但在从右到左的文本中将显示为")"。- 参数:
-
codePoint
- 要测试的字符(Unicode代码点) - 返回:
-
如果字符是镜像的,则返回
true
,如果字符不是镜像的或未定义,则返回false
。 - 自版本:
- 1.5
-
compareTo
按数字比较两个Character
对象。- 接口实现:
-
compareTo
在接口Comparable<Character>
- 参数:
-
anotherCharacter
- 要比较的Character
- 返回:
-
如果参数
Character
等于此Character
,则返回值0
;如果此Character
在数字上小于参数Character
,则返回小于0
的值;如果此Character
在数字上大于参数Character
,则返回大于0
的值(无符号比较)。请注意,这是严格的数字比较;它不依赖于区域设置。 - 自版本:
- 1.2
-
compare
public static int compare(char x, char y) 按数字比较两个char
值。返回的值与以下代码返回的值相同:Character.valueOf(x).compareTo(Character.valueOf(y))
- 参数:
-
x
- 要比较的第一个char
-
y
- 要比较的第二个char
- 返回:
-
如果
x == y
,则返回值0
;如果x < y
,则返回小于0
的值;如果x > y
,则返回大于0
的值 - 自版本:
- 1.7
-
reverseBytes
public static char reverseBytes(char ch) 返回指定char
值的字节顺序颠倒后的值。- 参数:
-
ch
- 要颠倒字节顺序的char
- 返回:
-
返回通过颠倒(或等效地交换)指定
char
值中的字节而获得的值。 - 自版本:
- 1.5
-
getName
返回指定字符codePoint
的名称,如果代码点是未分配
,则返回null。如果指定字符未被UnicodeData文件(由Unicode联盟维护的Unicode字符数据库的一部分)分配名称,则返回的名称与以下表达式的结果相同:
Character.UnicodeBlock.of(codePoint).toString().replace('_', ' ') + " " + Integer.toHexString(codePoint).toUpperCase(Locale.ROOT);
codePoint
,此方法返回的名称遵循Unicode标准中的"Unicode名称属性"部分的命名方案。对于其他代码点,例如Hangul/Ideographs,上述名称生成规则与Unicode标准中定义的规则不同。- 参数:
-
codePoint
- 字符(Unicode代码点) - 返回:
- 指定字符的名称,如果代码点未分配,则返回null。
- 抛出:
-
IllegalArgumentException
- 如果指定的codePoint
不是有效的Unicode代码点。 - 自版本:
- 1.7
-
codePointOf
返回由给定字符名称指定的Unicode字符的代码点值。如果字符未被UnicodeData文件(由Unicode联盟维护的Unicode字符数据库的一部分)分配名称,则其名称被定义为以下表达式的结果:
Character.UnicodeBlock.of(codePoint).toString().replace('_', ' ') + " " + Integer.toHexString(codePoint).toUpperCase(Locale.ROOT);
name
匹配不区分大小写,并删除任何前导和尾随空格字符。对于UnicodeData文件中的代码点,此方法识别符合Unicode标准中"Unicode名称属性"部分中定义的名称。对于其他代码点,此方法识别使用getName(int)
方法生成的名称。- 参数:
-
name
- 字符名称 - 返回:
- 指定名称的字符的代码点值。
- 抛出:
-
IllegalArgumentException
- 如果指定的name
不是有效的字符名称。 -
NullPointerException
- 如果name
为null
- 自版本:
- 9
-