java的类型转换

文章讨论了不同类型之间的转换,特别是Byte到Char、Char到Int的操作,涉及位移、位与和位或操作。同时指出Long能自动转化为float是因为float的存储方式允许更大的范围。Char转换为int时需要减去0,而int转char则加0。
摘要由CSDN通过智能技术生成

摘自how2j

类型长度短的变成长的不需要强制转换,反之如果超过短的精度,是有风险的,需要强制转换。

Byte到char是需要写代码的。Char到int也是要写代码的。

Char到byte

要用到右移,左移,位与,位或

Char 右移和oXFF00位与,得到9-16位的值放入byte[0],然后再和oXFF位与,得到右边8位的值,放到byte[1]中,这就是用两个byte表示char。

相当于用一个2个元素的Byte数组存储char的前8位和后8位。

Byte到char

把byte左移8位,然后和oXFF相与就是16位的char。就转换成功了。

Char转int。减一个‘0’

Int转char。加一个‘0’

Long有64位为什么能自动转化为32位的float?

Long能自动转化为float是因为long是用二进制存储的,而float使用科学计数法存储的,float的范围远大于long,所以可以自动转化。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值