char字符型与int型的相互转换

2 篇文章 0 订阅
1 篇文章 0 订阅
char[] ch = {'a', 'b', 'c'};
System.out.println(ch[0]);//a
char fg = 97;
System.out.println(fg);//a
char f = '9';
System.out.println(f);//9
//int 转换为char型;
// int类型转char类型,将数字加一个‘0’,并强制类型转换为char即可。
int num = 9;
char cNumber = (char) (num + '0');//为啥要加‘0’,'0'会自动转换为int型进行计算
System.out.println(cNumber);//9

//char转换为int

char cc = '6';
int number = cc - '0';//为啥要减去0
System.out.println(number);//6


System.out.println(Integer.parseInt(String.valueOf(cc)));//6

 

解释:为啥加0与减去0的问题:

1)在计算机中,0-127表示数字和字符,

假设这里字符‘0’------‘9’   ,

   对应int数字48--------57.

然后想要char转换为int,与'0'的偏移量则刚好是代表的数字。

想要int转换为char, 数字9想转换为为字符9,加‘0’,’0‘参与运算时,自动转换为int型,48+9=57,再强制转换为char,就是字符9

“向上兼容”--即:不同数据类型的数据参与运算,数据类型要强制转换,转换的方向是

(unsigned)char,(unsigned)short->int->unsigned->long->unsigned long->float->double->longdouble。

参考:

https://www.cnblogs.com/hongten/archive/2013/03/24/hongten_java_char_int.html

https://www.cnblogs.com/yongh/p/9688259.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值