Java类型转换规则,包括自动类型转换和强制类型转换

一、自动类型转换规则(类型兼容)

1.规则1:

如果一个操作数为double型,则整个表达式可提升为double型

2.规则2

满足自动类型转换的条件:

①两种类型要兼容:数值类型(整型和浮点型)互相兼容

②目标类型大于源类型: 例如:double 型大于 int 型

二、强制类型转换规则(类型兼容)

1.规则1

在把容量大的类型转换为容量小的类型时必须使用强制类型转换

2.规则2

转换过程中可能导致溢出或损失精度

3.规则3

浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入

三、代码展示

  //(type)value type是要强制类型转换后的数据类型
public static void main(String[] args) {
  int a=2;
  double d=2.9999;
  double result=a+d;//自动类型转换,a是int类型,自动转换为double类型
  int rst=a+(int)d;//将double类型强制类型转换int类型,且d精度丢失
  System.out.println(result);//输出结果为4.9999
  System.out.println(rst);//输出结果为4
}

猜你喜欢

转载自blog.csdn.net/weixin_43992185/article/details/105836626