我想用java做这个数学:
int index = 3 * (9568/20001);
在我的计算器中,它显示 3 *( 0.47837608... ) 即 1.43512824..
但是,在 Java 中,即使我尝试使用格式或 java.lang.Math.round,它总是给我 0。
1.43512824的第一个位置int 1就是我想要得到的。
最佳答案
试试这个
int index = (int)3 * (9568.0/20001);
因为在java中整数除以整数会得到整数,因此你的答案将不准确。如果您编写9568.0/20001
,它会给出双倍结果,因此结果更准确。
关于java - java中如何从long double中获取int?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30860386/