我知道也许是一个愚蠢的问题,但我不明白以下操作有什么问题:
value = 8.14
double netvalue = value / (1 + 23 / 100);
结果是:
netvalue = 8.14
答案 0 :(得分:14)
分部优先于添加,所以
1 + 23 / 100
被评估为1 + (23/100)
,1 + 0
(23/100
为0,因为它是int division,所以结果是int),所以你要划分{{1} } 1。
您可以将value
更改为23
以实现浮点除法:
23.0
或者你可以简单地除以1.23:
double netvalue = value / (1 + 23.0 / 100);
答案 1 :(得分:2)
让我们理解这个
double netvalue = value / (1 + 23 / 100);
评估的第一件事是23/100 gives 0
和1+ 0 = 1
最后double netvalue = 8.14/1; gives 8.14