一、什么情况会出现类型转换?
情形:类型的转换是在等号左边和等号右边的变量数据类型不一致的时候发生
分类:数据类型的转换可以分为隐式转换(自动类型转换)和显式转换(强制类型转换)两种。
二、如何理解隐式转换?
【1】需要满足什么条件?
1. 两种数据类型兼容
2. 最终类型的取值范围大于源数据类型(低级类型数据转换成高级类型数据)
- byte 类型的数据赋值给 short 类型的变量时,由于 short 类型的取值范围比较大,这里会发生隐式转换
byte varB = 1 Byte;
short varS = varB; \\类型从byte转为short
数据类型的级别规定如下(从左到右的转换顺序):
- 数值类型的数据转换:byte—>short—>int—>long—>float—>double
- 字符类型转换为整数:char——>int
三、如何理解显式转换?
【1】什么情况下需要?
无法进行隐式类型转换时:
- 当两种类型的数据不兼容时,或者目标类型的取值范围小于源类型时,就无法进行隐式转换
int i = 1; double d = 1.1; i = (int)d;