Math.ceil没有舍入值

时间:2013-04-17 14:49:47

标签: java

double totalInches = d * 0.3937;
double feetPart = totalInches / 12;
int inchesPart = (int) Math.ceil(totalInches - (feetPart * 12));
return (feetPart) + "' " + inchesPart + "''";

我得到一个值6.9999999 ' 0"。我正在返回一个字符串,这就是为什么以英尺为单位的小数值没有四舍五入的原因。

我试过没有施法。 double inchesPart = Math.ceil(totalInches - (feetPart * 12));,但我仍然得到相同的结果。

2 个答案:

答案 0 :(得分:5)

当然你需要:

int feetPart = (int)Math.floor(totalInches / 12);

或只是:

int feetPart = (int)(totalInches / 12);

答案 1 :(得分:1)

要获得两部分,您可以使用

int totalInches = (int) (d * 0.3937);
int feetPart = totalInches / 12;
int feetInchPart = totalInches % 12;