对于此代码块: int num = 5; int denom = 7; double d = num / denom; 的值d就是0.0。它可以通过强制转换来工作: double d = ((double) num) / denom; 但是还有另一种方法来获得正确的double结果吗?我不喜欢强制转换基元,谁知道会发生什么。
以下代码段中的结果如何 int a = 7; int b = 3; double c = 0; c = a / b; c最终得到的值为2,而不是人们所期望的2.3333。如果a和b是双打,答案的确变为2.333。但是可以肯定的是,因为c 已经是双精度数,它应该与整数一起使用吗? 那么怎么int/int=double不起作用呢?