Java 入门教程 Java Character类

2024-02-25 开发教程 Java 入门教程 匿名 0

本章节我们主要向大家介绍一下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 类的方法:

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