如何在java中获得除法结果的完整分数值?

如何在java中获得除法结果的完整分数值?,java,drjava,Java,Drjava,我是Java新手,我正在使用DRJavaIDE进行测试。我有下面的49700/40000分区,它显示1.0而不是1.2425 是我做错了什么吗?试试看,改为: double t = 49700/40000.0; System.out.println(t); 如果两个操作数都是整数,则结果将是一个被截断的整数,然后将其转换为双精度。如果其中一个操作数是double,则结果将是double。使用float进行十进制数计算很好,这是我的错误,我应该将源定义为double,然后返回double结果。谢

我是Java新手,我正在使用DRJavaIDE进行测试。我有下面的49700/40000分区,它显示1.0而不是1.2425

是我做错了什么吗?

试试看,改为:

double t = 49700/40000.0;
System.out.println(t);

如果两个操作数都是整数,则结果将是一个被截断的整数,然后将其转换为双精度。如果其中一个操作数是double,则结果将是double。

使用float进行十进制数计算

很好,这是我的错误,我应该将源定义为double,然后返回double结果。谢谢你纠正我。@Nair很高兴我能帮忙@Nair-如果源是双精度的,则只应将其定义为双精度。除此之外,您可以在除法时强制转换。您也可以在数值常量后加上d或f,例如40000f,但我更喜欢@dev使用的尾随.0。作为参考,类似的问题和答案。
double t = 49700/40000.0;
System.out.println(t);