JAVA 数据类型转换

理解类型转换

分别以int和long,int和double为例

long表示的范围较大,可以把int赋值给long,但是不能讲long赋值给int,double同理。不同数据类型变量之间 的赋值,表示范围小的可以隐式转换为范围较大的类型,反之不行。

int   字面值常量    给byte赋值

byte表示的数据范围是-128~127,200已经超过范围,而100还在范围之内。

使用字面值常量赋值的时候,Java会自动进行一些校验,判定赋值是否合理

使用强制类型转换 

强制类型转换可能会导致精度丢失,在上面的例子中10.5就变成了10。此外,强制类型转换不一定成功的,互不相干的类型之间无法强转,int和boolean就无法强制类型转换。 

理解数值提升

当int和long混合运算时,int会提升成long,得到的结果仍然是long类型,需要使用long类型来接收,如果想用int类型接收,则必须强制类型转换。

当两个byte类型运算时,也会用到数值提升 

 两个byte想同类型的运算出现报错,原因是:虽然a和b都是byte类型,但计算a+b时会将a和

b都提升为int在进行计算,得到的结果也是int,这时候赋值给c就出现了问题。

由于计算机的cpu通常是按照四个字节为单位从内存中读写数据,为了硬件上实现方便,诸如short和byte这种低于四个字节的类型,会提升成int在进行计算。

int和String的类型转换

int转化成String有两种方法

 

String转化为int

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值