自动类型转换
不需要程序员编码处理,直接用就能够自动转换。
取值范围小的变量或值,可以自动转换为取值范围大的变量。
即低位可以自动向高位转换。
强制类型转换
必须有代码控制转换。
要把取值范围大的变量或值,转换为表示取值范围小的变量的时候,就需要强制类型转换。
即高位向低位转换的时候,需要强制转换(强转)才能转换。
类型 名称 = (类型)值;
表达式类型的自动提升
小整数(int)和大整数(long)运算,赋值给小整数,需强制转换
整数与浮点运算,赋值给整数,需要强制转换.小数点会丢失
整数除以整数,赋值给整数,小数点会被忽略
整数除以整数,赋值给浮点, 直接赋值, 但是小数点会丢失
任何数据类型和字符吕进行+操作,都会被转换成字符串
表达式有多种数据类型的,整个表达式的数据类型,以表达式中最高型相同。
如:
byte bt = 2;
bt = bt + 1;
这个语句中。1默认是int,int的位数要比byte高,所以这个表达式的数据类型以1的数据类型int为准。
不需要程序员编码处理,直接用就能够自动转换。
取值范围小的变量或值,可以自动转换为取值范围大的变量。
即低位可以自动向高位转换。
强制类型转换
必须有代码控制转换。
要把取值范围大的变量或值,转换为表示取值范围小的变量的时候,就需要强制类型转换。
即高位向低位转换的时候,需要强制转换(强转)才能转换。
类型 名称 = (类型)值;
表达式类型的自动提升
小整数(int)和大整数(long)运算,赋值给小整数,需强制转换
整数与浮点运算,赋值给整数,需要强制转换.小数点会丢失
整数除以整数,赋值给整数,小数点会被忽略
整数除以整数,赋值给浮点, 直接赋值, 但是小数点会丢失
任何数据类型和字符吕进行+操作,都会被转换成字符串
表达式有多种数据类型的,整个表达式的数据类型,以表达式中最高型相同。
如:
byte bt = 2;
bt = bt + 1;
这个语句中。1默认是int,int的位数要比byte高,所以这个表达式的数据类型以1的数据类型int为准。