Java Character类

本章节我们主要向大家介绍一下Java Character类,以及Character类的用法。

Java Character类

使用字符时,我们通常使用的是内置数据类型 char。

实例

char ch = 'a';

// Unicode for uppercase Greek omega character
char uniChar = '\u039A'; 

// 字符数组
char[] charArray = { 'a', 'b', 'c', 'd', 'e' }; 

然而,在实际开发过程中,我们经常会遇到需要使用对象,而不是内置数据类型的情况。为了解决这个问题,Java 语言为内置数据类型 char 提供了包装类 Character 类。

Character类的用法:Character 类提供了一系列方法来操纵字符,你可以使用 Character 的构造方法创建一个 Character 类对象,例如:

Character ch = new Character('a');

在某些情况下,Java 编译器会自动创建一个 Character 对象。

例如,将一个 char 类型的参数传递给需要一个 Character 类型参数时,那么编译器会自动地将 char 类型参数转换为 Character 对象。 这种特征称为装箱,反过来称为拆箱。 

实例

// Here following primitive char 'a'
// is boxed into the Character object ch
Character ch = 'a';

// Here primitive 'x' is boxed for method test,
// return is unboxed to char 'c'
char c = test('x');

转义序列

前面有反斜杠(\)的字符代表转义字符,它对编译器来说是有特殊含义的。

下面列表展示了 Java 的转义序列:

转义序列 描述
\t 在文中该处插入一个tab键
\b 在文中该处插入一个后退键
\n 在文中该处换行
\r 在文中该处插入回车
\f 在文中该处插入换页符
\' 在文中该处插入单引号
\" 在文中该处插入双引号
\\ 在文中该处插入反斜杠

实例

当打印语句遇到一个转义序列时,编译器可以正确地对其进行解释。

public class Test {

   public static void main(String args[]) {
      System.out.println("She said \"Hello!\" to me.");
   }
}

以上实例编译运行结果如下:

She said "Hello!" to me.

Character 方法

下面是 Character 类的方法:

序号 方法与描述
1 isLetter()
是否是一个字母
2 isDigit()
是否是一个数字字符
3 isWhitespace()
是否一个空格
4 isUpperCase()
是否是大写字母
5 isLowerCase()
是否是小写字母
6 toUpperCase()
指定字母的大写形式
7 toLowerCase()
指定字母的小写形式
8 toString()
返回字符的字符串形式,字符串的长度仅为1


初学者会经常使用的几个方法

public static boolean isUpperCase(char ch): 判断给定的字符是否是大写字符;


public static boolean isLowerCase(char ch): 判断给定的字符是否是小写字符;


public static boolean isDigit(char ch): 判断给定的字符是否是数字字符;


这三个句子里的boolean代表,这三个方法使用后的返回值是 boolean 型。


实例

public class Java {

	public static void main(String[] args) {
		Character ch = new Character('X');
		
		System.out.println(Character.isUpperCase(ch));
		//Character.isUpperCase(ch) 用于判断括号里的字母是否为大写
		System.out.println(Character.isLowerCase(ch));
		//Character.isLowerCase(ch) 用于判断括号里的字母是否为小写
		System.out.println(Character.isDigit(ch));
		//Character.isDigit(ch) 用于判断括号里的内容是否为数字
	}
}

运行结果为:

true
false
false

对于方法的完整列表,请参考的 java.lang.Character API 规范。