java里Character类_Java字符及Character类

字符是组成英文的基本部分,在编程的世界中,26 个英文字母远远不能满足日常的需求。除了 26 个字母之外,还有其他的字符供编程使用。下面我们介绍一下 Java 编程中的字符。

字符

字符是一个个单个的符号,如 26 个英文字母(包含大小写)、10 个阿拉伯数字等。这些字符在计算机中是按照 ASCII 码的方式进行存储的,其取值范围是 0~127。ASCII 码值与字符的对应可以参照相关资料进行查阅。

在 Java 编程时,定义一个字符变量,可以使用 char 关键字,例如:

char ch1='A';

char ch2='a';

上面的语句定义了两个字符型变量 ch1 和 ch2,其字符值分别标识字符 A 和字符 a。在使用强制转换时,字符可以直接转换为对应的 ASCII 码值,如示例 1 所示。

【示例 1】字符和int类型互相转换

package chapter12;

public class AssicToInt {

public static void main(String args[]) {

char ch1 = 'a';

char ch2 = '2';

int num = 65;

System.out.println("字符变量" + ch1 + "对应的ASCII数值为" + (int) ch1);

System.out.println("字符变量" + ch2 + "对应的ASCII数值为" + (int) ch2);

System.out.println("字符变量" + num + "对应的ASCII数值为" + (char) num);

}

}

程序编译后,运行结果如下:

字符变量a对应的ASCII数值为97

字符变量2对应的ASCII数值为50

字符变量65对应的ASCII数值为A

从示例 1 的运行结果可以看出,字符型的变量在计算机中是按照 ASCII 码值进行存储的,如果强行输出整型数值,那么系统会将字符对应的 ASCII 码值输出。同理,如果强制转换在范围内的 ASCII 码值为字符型,那么也会输出对应的字符。

在进行 Java 编程时,一般使用关键字 char 来定义一个字符变量,而在实际的编程过程中,经常会使用到对象。Character 类在对象中包装一个基本类型为 char 的值。

Character类

Java 语言为内置数据类型 char 提供了包装类 Character 类。在使用时,仅需要使用类 Character 创建相应的对象即可实现对字符的操作。Character 类的使用方式如示例 1 所示。

【示例 1】Character类的使用

package chapter12;

public class CharacterClass {

public static void main(String args[]) {

Character ch1 = new Character('A');

Character ch2 = new Character('1');

System.out.println("判断字符" + ch1 + "是否为一个字母,结果为:" + Character.isLetter(ch1));

System.out.println("判断字符" + ch2 + "是否为一个数字,结果为:" + Character.isDigit(ch2));

System.out.println("判断字符" + ch2 + "是否为一个空格,结果为:" + Character.isSpaceChar(ch2));

System.out.println("判断字符" + ch1 + "是否为一个大写字母,结果为:" + Character.isUpperCase(ch1));

System.out.println("字符" + ch1 + "转为小写字母,结果为:" + Character.toLowerCase(ch1));

System.out.println("字符" + ch1 + "对应的十进制数值为:" + (int) (ch1));

System.out.println("字符" + ch2 + "对应的十进制数值为:" + (int) (ch2));

System.out.println("字符" + ch1 + "和字符" + ch2 + "进行比较,结果为:" + Character.compare(ch1, ch2));

System.out.println("字符" + ch2 + "和字符" + ch1 + "进行比较,结果为:" + Character.compare(ch2, ch1));

}

}

程序编译后,运行结果如下:

判断字符A是否为一个字母,结果为:true

判断字符1是否为一个数字,结果为:true

判断字符1是否为一个空格,结果为:false

判断字符A是否为一个大写字母,结果为:true

字符A转为小写字母,结果为:a

字符A对应的十进制数值为:65

字符1对应的十进制数值为:49

字符A和字符1进行比较,结果为:16

字符1和字符A进行比较,结果为:-16

在示例 1 中,首先定义了两个 Character 类的对象 ch1 和 ch2;然后依次调用了 Character 类中的静态方法来判断字符是否为字符、是否为数字、是否为空格、转为小写字符,并进行了比较运算。通过将其转换为 ASCII 码值后的结果可以看出,对字符进行比较,返回的结果一般是两个字符的 ASCII 码值的差值。

Character 类中提供了非常丰富的普通方法和静态方法,在实际的运算和操作过程中可以根据需要来选择使用哪些方法,而不需要重新实现。

我们也可以通过键盘输入一个整数 65,然后输出对应的 ASCII 码值。参考代码如示例 2 所示。

【示例 2】输出整数对应的ASCII码值

package chapter12;

public class work1 {

public static void main(String[] args) {

int i = 65; // 定义整数

char ch = (char) i; // 强制转换为字符

System.out.println("整数" + i + "转换为字符为:" + ch);

}

}

程序编译后,运行结果如下:

整数65转换为字符为:A

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值