java类型转换有两种方式:自动转换(隐式转换)和强制类型转换
1、自动转换(隐式转换)
自动转换需要满足两个条件,第一是两种类型彼此兼容,第二是目标类型的取值范围必须大于源类型。
备注:对于在代码中遇到两个不同类型之间存在运算时,会自动将范围小的类型转换为范围大的类型
java中定义了若干适用于表达式提升规则:
1)所有byte类型,short类型和char类型的值可以直接提升为int类型
2)如果有一个操作数类型为long,计算结果为long
4)如果有一个操作数类型为double,计算结果为double
3)如果有一个操作数类型为float,计算结果为float
备注:凡是有字符串参与的加运算都默认为字符串拼接
2、强制类型转换
不满足自动转换条件时,需要强制转换,这时需要注意转换中造成的数值不准确。