分区后获取十进制值

时间:2011-01-03 10:20:20

标签: java android

如何在分割后获得小数值? 这样做之后

days = miliseconds/(24 * 60 * 60 * 1000)

假设值(即天数)为27.8351 我怎么得到8351? 试过

hours = days % (int) days认为它正在做27.8351 / 27 但它仍然返回一个大的零,没有尝试将其转换为字符串,然后基于DOT(。)分裂,但我不喜欢这种方式,我看了一些东西?

3 个答案:

答案 0 :(得分:1)

您应该使用BigDecimal进行此类操作。 divideAndRemainder方法可用。

答案 1 :(得分:0)

有很多方法可以做到这一点。

如果您事先知道小数位数,则将结果减去整数,然后乘以10乘以小数位数。

示例:dec of dec的数量为4,结果为42.8798

过程:

(1)42.8798 - 42 = 0.8798

(2)0.8798 *(10 ^ 4)= 8978

答案 2 :(得分:0)

hours = (days - (int) days) * 10000

(获得十进制后的4位数字)

相关问题