首页 > 解决方案 > 返回或返回实例变量的小数

问题描述

从字符串的输入参数索引位置开始的部分字符串 str(实例变量)如果输入参数索引位置大于或等于字符串长度,则返回空字符串

标签: javastringintegerreturndouble

解决方案


获取值的“小数”(即数字的小数位)的最简单方法是使用除数为 1 的余数运算符,即double%

public double drawDecimal() {
    return dD % 1;
}

这与返回具有相同的问题0.11000000000000032,这是浮点数固有的不准确性的影响。请参阅:浮点数学是否损坏?

为了解决这个问题,您可以使用 进行相同的计算BigDecimal,即

public double drawDecimal() {
    return BigDecimal.valueOf(dD).remainder(BigDecimal.ONE).doubleValue();
}

结果是0.11,保持原始值的“小数精度”。


推荐阅读