我有一个整数值:
Integer value = 56472201;
值可能是正数或负数。
当我将该值除以 1000000 时,我希望这个结果出现在表格中,56.472201
但它只给了我商。我怎样才能同时获得商和余数值?
我有一个整数值:
Integer value = 56472201;
值可能是正数或负数。
当我将该值除以 1000000 时,我希望这个结果出现在表格中,56.472201
但它只给了我商。我怎样才能同时获得商和余数值?
将其转换为浮动,然后执行此操作:
int i = 56472201;
float j = ((float) i)/1000000.0
编辑:由于精度(在您的情况下需要),请使用双精度。同样正如 Konrad Rudolph 所指出的,不需要显式转换:
double j = i / 1000000.0;
如果你将一个 int 除以一个 double,你将得到一个 double 结果,如本单元测试所示。
@Test
public void testIntToDouble() throws Exception {
final int x = 56472201;
Assert.assertEquals(56.472201, x / 1e6d);
}
1e6d
表示1 * 10^6
为双
您必须先将值转换为浮点类型,否则您将进行整数除法。
C# 中的示例:
int value = 56472201;
double decimalValue = (double)value / 1000000.0;
(此代码中实际上不需要强制转换,因为除以浮点数会将值强制转换为匹配,但在代码中写出强制转换更清楚,因为这就是实际发生的情况。)