基本数据类型转换:
byte -> short -> int -> long -> float ->double
^
|
char
*从左到右(小范围到大范围)自动类型转换。
*从大范围到小范围要进行强制转换。
1、自动类型转换。
*小类型到大类型 例如:int a = 365; long l = a;
*多种类型参与运算,会自动转换为大类型。例如: long l = 365*24*60L;
*byte short char 参与运算,将直接转换int在运算。例如:byte b = 97; int a = b+1;
2、强制类型转换。
*大类型到小类型。 例如:float f1 = 5f; long l1 = (long) f1;
*强制类型转换有时会丢失精度。例如:double pi = 3.14_15_926_53_58_97; float fpi = (float) pi;
*强制类型转换有时候会溢出。例如:long l2 = 9223372036854775807L; int i2 = (int) l2;
*可以将int类型的直接量赋值给char 、byte 、short(不能超过三个类型对应的范围)例如:byte a = 97;
注意:byte a = 1; a = a+1;(编译失败,会出错)。a += 1;(编译成功)
Java类型转换详解
本文详细介绍了Java中的基本数据类型转换规则,包括自动类型转换和强制类型转换两种方式,并通过实例展示了不同类型之间的转换过程及可能遇到的问题。
1959

被折叠的 条评论
为什么被折叠?



