Java Double 转换为 Int round

标签 java int double

当且仅当点后 2 个数字为 0 时,我想将 double 值转换为 int。

示例

双 x = 25.001

最佳答案

你可以使用这个:

double x = 25.001;
int i = (int) x;
System.out.println(x);//Input
if (x - i <= 0.01) {
    x = (int) x;
}
System.out.println(x);//Output

结果

Input                Output
25.001               25.0
25.011               25.011
<小时/>

如果你想使用第二个变量,你可以使用:

int y = 0;
if (x - i <= 0.01) {    
    y = (int) x;
}

注意

但请注意,如果您的输入不正确,您将始终得到 0,我喜欢第一个解决方案,它比第二个解决方案更好。

关于Java Double 转换为 Int round,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43571460/

相关文章:

java - 如何从返回 double 组的方法中获取所有 double 值?

java - Spring mongo 查询设置自定义超时

java - 为什么 'add' 方法在 AbstractCollection 中不是抽象的?

python - 将 "Infinite" float 转换为整数

php - 在 PHP 中定义无符号 CHAR

c# - 生成一个带一位小数点的随机 double

java - Swagger 路线在 Spring Boot + Jersey 上返回 404

java - 我想找到链表之间的数字

java - 如何从InputStreamReader读取整数

Java 6 - 创建并检测第一个高于 Float.MAX_VALUE 的 Double 值