java之“强制数据类型转换与数据溢出”
一、eclipse操作示例
1、完整代码
本文以byte类型相加运算来做“强制数据类型转换与数据溢出”的示例。
public class forcedTypeConversion {
/**
* @param args 强制数据类型转换与数据溢出
*/
public static void main(String[] args) {
byte b1=100;
byte b2=100;
byte b3;
int b4;
// 对于整数型数据类型在做运算的时候,如 :byte和short类型会默认转换为 int类型后再做运算,得到的结果也是int类型。但 可以再强制类型转换为 byte或short。
b3=(byte)(b1+b2); // byte范围是-128-127之间,100+100后为200的int类型,此时强制转换为byte类型会到处溢出,即超过8个二进制位,所以输出内容为-56而不是200
b4=(b1+b2);
System.out.println(b3);
System.out.println(b4);
}
}