减少一个百分比的int?

时间:2014-10-29 22:52:26

标签: java int double percentage

我99%完成了我的程序,但是对于一部分我需要将某个值(一个int)减少90%。最初我想哦,我可以将它乘以0.1,这样就可以了。但我不能,因为减少90%的价值在减少90%后仍需要成为一个整数。

这就是我所拥有的,但由于上述原因,它不起作用。

 s2.increaseAltitude(0.1*(s2.getAltitude()));

所以我的问题是我不知道如何将值减少90%,但保持整数。

2 个答案:

答案 0 :(得分:0)

最简单的方法是将操作结果转换为int

s2.increaseAltitude((int)(0.1*(s2.getAltitude())));

但是这会将结果向下舍入,因为将double转换为int会截断小数部分。

如果您想/需要向上或向下舍入,则可以使用Math.round()

s2.increaseAltitude((int)(Math.round(0.1*(s2.getAltitude()))));

答案 1 :(得分:0)

计算后舍入它怎么样:

s2.increaseAltitude((int) (0.1*(s2.getAltitude()) + .5));