整数除法:如何生成双精度值?
2022-08-31 05:11:30
对于此代码块:
int num = 5;
int denom = 7;
double d = num / denom;
的值为 。它可以通过铸造来强制工作:d
0.0
double d = ((double) num) / denom;
但是,还有另一种方法可以获得正确的结果吗?我不喜欢投射原语,谁知道会发生什么。double
对于此代码块:
int num = 5;
int denom = 7;
double d = num / denom;
的值为 。它可以通过铸造来强制工作:d
0.0
double d = ((double) num) / denom;
但是,还有另一种方法可以获得正确的结果吗?我不喜欢投射原语,谁知道会发生什么。double
投射基元有什么问题?
如果你因为某种原因不想投,你可以做
double d = num * 1.0 / denom;