This question already has answers here:
How do I get whole and fractional parts from double in JSP/Java?
(19个回答)
7年前关闭。
是否有一种简单的方法可以从d本身提取0.321562?我试着看数学课,但是没有运气。如果可以做到这一点而无需转换为字符串或强制转换为其他任何东西,那就更好了。
请注意,由于二进制浮点的工作方式,因此不会给您精确的0.321562,因为原始值并不完全是4.321562。如果您真的对精确数字感兴趣,则应改用
(19个回答)
7年前关闭。
double d = 4.321562;
是否有一种简单的方法可以从d本身提取0.321562?我试着看数学课,但是没有运气。如果可以做到这一点而无需转换为字符串或强制转换为其他任何东西,那就更好了。
最佳答案
好吧,您可以使用:
double x = d - Math.floor(d);
请注意,由于二进制浮点的工作方式,因此不会给您精确的0.321562,因为原始值并不完全是4.321562。如果您真的对精确数字感兴趣,则应改用
BigDecimal
。08-18 10:24