Java 之 数据类型强制转换
Java 之 数据类型强制转换
介绍:
自动类型转换的逆过程,将容量大的数据类型转为容量小的数据类型。使用时要加上强制转换符 () ,但可能造成精度下降或溢出,要格外注意。
// 示例:
int number = (int)38.9;
System.out.println(number); // 结果为 38
int number2 = 300;
byte number_byte = (byte)number_byte;
System.out.println(number_byte); // 结果为 44
/*
因为int类型300在内存中是以二进制存储的
00000000 00000000 00000001 00101100
而byte只有8bit的空间,所以强制类型转换只会保留最后八位
最后保存就是
00101100
前面的直接抛弃,这就叫做溢出
*/
细节:
- 当需要对数据从高精度类型转为低精度类型时,就需要用到强制转换。
- ⭐强转符只针对最近操作数有效 如
int conter = (int)3.14 + 0.0015 + 0.0000926此时编译会报错,因为这条语句之针对3.14做了强转换,而后面的0.0015和0.0000926依旧是double类型,接收的 char类型可以保存int的常量值,但不能保存int的变量值,需要强制转换 (⭐注意溢出)byte、short、char类型在进行运算时,当作int类型处理。

浙公网安备 33010602011771号