字符型数据与数值型数据之间的转换

(1)char字符型数据可以转换成任意一种数值类型,反之亦然。将整数转换成插入型数据时,只用到该数据的低十六位,其余部分被忽略。如:char ch=(char)0xAB0041;输出ch+‘A’;

(2)将一个浮点值转换成char型时,首先将浮点值喜欢换成int,然后将整数值转换成char。如:char ch=(char)65.25;输出char值为‘A’

(3)当char型数据转换成数值型时,这个字符的Unicode码就被转换成某个特定的数值类型。

如果转换结果适用于目标变量,就可以使用隐式转换方式;否则,必须使用显式转换方式。例如,因为’a’的统一码是97,它是在一个字节的范围内,所以就可以使用隐式转换方式:

                byte b=’a’;

                int i=’a’;

但是,因为统一码\uFFF4不适用于一个字节范围内,下面的转换就是不正确的:  byte b=’\uFFF4′;

为了强制赋值,就必须使用显式转换方式:           byte b=(byte)’\uFFF4′;

0~FFFF之间的任何一个十六进制正整数都可以隐式地转换成字符型数据。而任何不在此范围内的其他数值都必须显式地转换为char型。

注意 :所有数值运算符都可以用在char型操作数上。如果另一个操作数是一个数字或字符,那么char型操作数就会被自动转换成一个数字。如果另一个操作数是一个字符串,字符就会与该字符串相连。

注意 小写字母的统一码是从’a’的统一码开始,然后是’b’、’c’、…、’z’的统一码所构成的连续整数。大写字母的情况也是一样的。此外,’a’的统一码比’A’的统一码大,所以,’a’-‘A’与’b’-‘B’相等。因此,对应于小写字母ch的大写字母是(char)(‘A’+(ch-‘a’))。

 

 

以上来自《Java语言程序设计基础篇》——机械工业出版社  4.3.3  自己练习练习就学会了哦

    原文作者:L_Program
    原文地址: https://blog.csdn.net/qq_38189320/article/details/100600538
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞