类型转化

#数据类型转换之隐式转换
A:案例演示

  • a:int + int
  • b:byte + int
    B:Java中的默认转换规则
  • 取值范围小的数据类型与取值范围大的数据类型进行运算,会先将小的数据类型提升为大的,再运算

A:强制转换问题

  • int a = 10;
  • byte b = 20;
  • b = a + b;
    B:强制转换的格式
  • b = (byte)(a + b);
    C:强制转换的注意事项
  • 如果超出了被赋值的数据类型的取值范围得到的结果会与你期望的结果不同

A:案例演示

  • 面试题:看下面的程序是否有问题,如果有问题,请指出并说明理由。
  • byte b1 = 3;
  • byte b2 = 4;
  • byte b3 = b1 + b2;
  • 从两方面去回答这个题
  • b1和b2是两个变量,变量里面存储的值都是变化的,所以在程序运行中JVM是无法判断里面具体的值
  • byte类型的变量在进行运算的时候,会自动类型提升为int类型
  • byte b4 = 3 + 4;
  • 3和4都是常量,java有常量优化机制,就是在编译的的时候直接把3和4的结果赋值给b4了

int x = 4;
int y = (x++)+(++x)+(x*10);
4 + 6 + 60 =70

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值