深入java虚拟机学习笔记(11)--类型转换

学习笔记,仅供参考!穷人买不起记事本~~大哭大哭大哭
Java虚拟机中实现不同基本数据类型之间转换功能的指令

转换操作码
  后面没有操作数,转换的值从栈顶弹出,转换,然后再将转换结果压入栈。
  int/float/long/double的操作码
  
操作码操作数说明
i2l将int类型值转化为long类型值
i2f
将int类型值转化为float类型值
i2d
将int类型值转化为double类型值
l2f
将long类型值转化为float类型值
l2d
将long类型值转化为double类型值
l2d
将long类型值转化为double类型值
f2i
将float类型值转化为int类型值
f2l
将float类型值转化为long类型值
f2d
将float类型值转化为double类型值
d2i
将double类型值转化为int类型值
d2l
将double类型值转化为long类型值
d2f
将double类型值转化为float类型值
  
  将int类型转化为比int类型更小空间的数据类型。从操作数栈中弹出一个int类型值 ,将它转换为能用byte/short/char类型能描述的int类型值,然后再将这个转化后的int类型值压入栈。

  i2b指令弹出的int类型值截断为byte类型,然后对其进行带符号位扩展,恢复成int类型值。

  i2s指令弹出的int类型值截断为short类型,然后对其进行带符号位扩展,恢复成int类型值。

  i2c指令弹出的int类型值截断为char类型,然后对其进行零扩展,恢复成int类型值。

操作码操作数        说 明
i2b 无将int类型值转换为byte类型值
i2c 无
将int类型值转换为char类型值
i2s 无
将int类型值转换为short类型值

  



















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值