Java自动舍入数据如何预防

来源:爱站网时间:2022-10-24编辑:网友分享
这篇文章主要讲解的是“Java自动舍入数据如何预防”内容,有不少网友之前来咨询爱站技术频道网站小编。为此小编整理相关知识点给大家参考下,希望能帮助到朋友们处理问题。

问题描述


我有一个返回双精度值的方法

public double getOdds() {
    return odds;
}

完全可以正常工作。但是,问题在于显示数据时,它会自动将插入的值四舍五入。我想对此表示偏爱,并获得2个小数的值。

这是我在JSP中调用该方法的地方。 ArrayList“下注”由用户输入的所有值组成。但是,如上所述,当用户输入例如2.75,它返回3.0

ArrayList <bets> bets = betsDAO.getBets(x, y);

for (bets bet : bets) {

    <td><%=bet.getOdds()%></td>
}

我对Java还是很陌生,并曾尝试寻找解决方案,但是很遗憾,我无法解决问题。

思路一:


Math.floor不能帮助四舍五入吗?它会四舍五入,如果您需要使用四舍五入,请使用Math.ceil。

思路二:


取决于您打算使用哪种数据类型,但是此

should do the trick for you

    public class Rounding {

        public static void main(String[] args) {
             //using string format
            double input = 3.14159265359;
            System.out.println("double : " + input);
            System.out.println("double : " + String.format("%.2f", input));

//using Decimal format
     double num = 1.34567;
        DecimalFormat df = new DecimalFormat("#.###");
        df.setRoundingMode(RoundingMode.CEILING);

        System.out.println(df.format(num));
        }

    }

输出:双重:3.14159265359双倍:3.14双倍:3.14

输出:1.346

因此您可以在此处更具体地指定要返回的小数点。这完全取决于您项目中小数精度的重要性。

Java自动舍入数据如何预防的内容已经分享完结了,持续关注我们爱站技术频道网站,小编每天都会提供各种不同类型的文章给大家,帮助到大家解决一些小问题 。

上一篇:Java编程中GPIO解构函数的详细介绍

下一篇:使用Java spring发送邮件的方法

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载