最后几行为什么他在双重使用类型转换?
At last lines why he is using typecasting in double?
我是 java 的新手
这只是代码的一部分,只是我需要知道他为什么在这里使用类型转换以及为什么特别使用 int?
double 任意数 =(int) 32/8.5;
这个:.
(int) 32/8.5;
将 32
转换为整数,而不是整数除法的结果,
因为铸造比除法具有更高的优先级。
但这完全没有必要,因为 32 已经是一个整数。
所以这个:
double anynumber =(int) 32/8.5;
System.out.println(anynumber);
将打印:
3.764705882352941
就像没有选角一样。
但是这个:
double anynumber =(int) (32/8.5);
System.out.println(anynumber);
将打印:
3.0
因为它通过截断小数位以创建整数来将转换应用于除法结果。
所以回答你的问题,如果你在书本或网上找到这行代码,
它与简单的没有什么不同:
double anynumber = 32/8.5;
我是 java 的新手 这只是代码的一部分,只是我需要知道他为什么在这里使用类型转换以及为什么特别使用 int?
double 任意数 =(int) 32/8.5;
这个:.
(int) 32/8.5;
将 32
转换为整数,而不是整数除法的结果,
因为铸造比除法具有更高的优先级。
但这完全没有必要,因为 32 已经是一个整数。
所以这个:
double anynumber =(int) 32/8.5;
System.out.println(anynumber);
将打印:
3.764705882352941
就像没有选角一样。
但是这个:
double anynumber =(int) (32/8.5);
System.out.println(anynumber);
将打印:
3.0
因为它通过截断小数位以创建整数来将转换应用于除法结果。
所以回答你的问题,如果你在书本或网上找到这行代码,
它与简单的没有什么不同:
double anynumber = 32/8.5;