java类型无损自动转换的规则
时间: 2023-11-09 20:07:54 浏览: 99
Java中自动类型转换共3页.pdf.zip
Java中的自动类型转换(无损转换)遵循以下规则:
1. byte, short, char 类型可以自动转换为 int 类型。
2. 如果表达式中两个操作数的类型不同,则会将它们转换为相同的类型再进行操作。转换的优先级为从低到高:byte, short, char → int → long → float → double。
3. 如果将一个浮点数赋值给整型变量,则会将它进行截断,只保留整数部分。
4. 如果将一个整型数赋值给浮点型变量,则会将它转换为浮点数。
5. boolean 类型不能与任何其他类型进行自动类型转换。
6. 自动类型转换是编译器自动完成的,不需要显式地进行转换。
例如,以下代码演示了自动类型转换的规则:
```
int i = 10;
double d = i; // 自动转换为double类型
System.out.println(d); // 输出结果为10.0
float f = 1.2f;
int j = (int)f; // 强制类型转换为int类型,并且进行截断
System.out.println(j); // 输出结果为1
```
阅读全文