java - 除以 2 个数字不返回正确

标签 java android double division

<分区>

Possible Duplicate:
Java Integer division: How do you produce a double?

当我将 2 个数字相除以尝试得到类似 .90 的结果时,我总是得到 1.0 或 0.0

int number1 = 6517253;
int number2 = 7195629;
double number3 = number1 / number2; //returns 0.0 supposed to be 0.9057239 and I want 0.90
double number4 = number2 / number1; //returns 1.0 supposed to be 1.1040893 and don't really want that one

如果我将 double 更改为 float,会做同样的事情。

最佳答案

您应该将其中一个操作数转换为double。尝试:

double number3 = (double) number1 / number2;
double number4 = (double) number2 / number1;

这是因为 Java 将 int/int 的类型推断为 int,但是,double/int 的类型被推断为

关于java - 除以 2 个数字不返回正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13674921/

相关文章:

java - 从内部类对象获取外部类对象

c# - 当将整数视为对象并进行比较时,为什么整数不会提升为 double ?

postgresql - 使用 JOOQ 将 NaN 值插入到 postgresql 数据库中

java - 从 .txt 文件读取后从 00 :00 format to a double 00. 00 格式转换字符串?

java - ElasticSearch 只返回具有不同值的文档

java - 有没有任何工具或技术可以识别打开的结果集

来自 null 的 java 静态字段

java - Jni FindClass 返回 NULL

android - 解决android :gravity and android:layout_gravity之间的冲突

android - 在 Eclipse 中创建 CVS 时主机名和存储库路径是什么