“嗨,阿米戈!又是我。我想告诉你另一个相当简单的包装器类。今天我们将讨论 Character,它是 char 的包装器。”

“这节课也挺简单的。”

代码
class Character
{
 private final char value;

 Character(char value)
 {
  this.value = value;
 }

 public char charValue()
 {
  return value;
 }

 static final Character cache[] = new Character[127 + 1];

 public static Character valueOf(char c)
 {
  if (c <= 127)
   return cache[(int)c];

  return new Character(c);
 }

 public int hashCode()
 {
  return (int)value;
 }

 public boolean equals(Object obj)
 {
  if (obj instanceof Character)
  {
   return value == ((Character)obj).charValue();
  }
  return false;
 }
}

“它有以下内容:”

1)一个接受内部值的构造函数和一个返回它的 charValue 方法。

2)返回 Character 对象的 valueOf 方法,但缓存值从 0 到 127 的对象。就像 Integer、Short 和 Byte。

3) hashCode() 和 equals 方法——同样,这里没有什么奇怪的。

“它还有很多其他有用的方法(上面没有显示)。我会在这里为你列出一些:”

方法 描述
boolean isDefined(char)
字符是 Unicode 字符吗?
boolean isDigit(char)
字符是数字吗?
boolean isISOControl(char)
角色是控制角色吗?
boolean isLetter(char)
字符是字母吗?
boolean isJavaLetterOrDigit()
字符是字母还是数字?
boolean isLowerCase(char)
这是小写字母吗?
boolean isUpperCase(char)
这是大写字母吗?
boolean isSpaceChar(char)
这个字符是空格还是类似的东西(有很多不可见的字符)?
boolean isTitleCase(char)
字符是标题字符吗?

“谢谢你,金。我认为其中一些方法对我有用。”