Java中三种保留小数点的方法

这篇具有很好参考价值的文章主要介绍了Java中三种保留小数点的方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

方法一:使用BigDecimal格式化小数点

  • ROUND_DOWN直接删除多余的位数.
  • ROUND_HALF_UP直接四舍五入.
  • ROUND_UP是进位处理保留的小数后面无论是几都会进一位.
  • ROUND_HALF_DOWN是如果要保留的那个小数位是5则向下舍.
  • ROUND_CEILING接近正无穷大的舍入.
  • ROUND_FLOOR接近负无穷大的舍入,数字>0和ROUND_UP作用一样,数字<0和ROUND_DOWN作用一样.
  • ROUND_HALF_EVEN下最接近的数字舍入,如果与两个相邻数字的距离相等,泽祥相邻的偶数舍入.
public static void main(String[] args) {
        //5.254变成5.2
        BigDecimal bigDecimal1 = new BigDecimal(5.254).setScale(1, BigDecimal.ROUND_DOWN);
        System.out.println("bigDecimal1="+bigDecimal1);
        //5.254变成5.3
        BigDecimal bigDecimal2 = new BigDecimal(5.254).setScale(1, BigDecimal.ROUND_HALF_UP);
        System.out.println("bigDecimal2="+bigDecimal2);
        //5.224变成5.3
        BigDecimal bigDecimal3 = new BigDecimal(5.224).setScale(1, BigDecimal.ROUND_UP);
        System.out.println("bigDecimal3="+bigDecimal3);
        //5.554变成5.6,如果是5.254则变成5.3
        BigDecimal bigDecimal4 = new BigDecimal(5.554).setScale(1, BigDecimal.ROUND_HALF_DOWN);
        System.out.println("bigDecimal4="+bigDecimal4);
        //ROUND_CEILING接近正无穷大的舍入
        BigDecimal bigDecimal5 = new BigDecimal(5.254).setScale(1, BigDecimal.ROUND_CEILING);
        System.out.println("bigDecimal5="+bigDecimal5);
        //5.254变成5.2,-5.254变成-5.3
        BigDecimal bigDecimal6 = new BigDecimal(-5.254).setScale(1, BigDecimal.ROUND_FLOOR);
        System.out.println("bigDecimal6="+bigDecimal6);
        //5.254变成5.3,5.244变成5.2
        BigDecimal bigDecimal7 = new BigDecimal(5.244).setScale(1, BigDecimal.ROUND_HALF_EVEN);
        System.out.println("bigDecimal7="+bigDecimal7);

    }

结果

Java中三种保留小数点的方法

方法二: 使用Math工具中的取整方法,可用于浮点数取整,只看浮点数的小数位是何值来判断.

public static void main(String[] args) {
        double i=3.76;
        //四舍五入直接取整数
        long round = Math.round(i);
        //向上取整,5.46变成6.0,3.46变成4.0
        double ceil = Math.ceil(i);
        //向下取整保留一位小数为0,3.76变成3.0
        double floor = Math.floor(i);
        System.out.println(round);
        System.out.println(ceil);
        System.out.println(floor);
    }

结果展示:

Java中三种保留小数点的方法

方法三: 使用DecimalFormat数据格式化方式.

double num = 55.382;
        //定义保留格式,相当于保留几位小数
        DecimalFormat df = new DecimalFormat("0.0");
        //指定四舍五入规则HALF_UP
        df.setRoundingMode(RoundingMode.HALF_UP);
        System.out.println(df.format(num));

结果展示:

Java中三种保留小数点的方法文章来源地址https://www.toymoban.com/news/detail-506918.html

到了这里,关于Java中三种保留小数点的方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uniapp中APP端使用echarts用formatter设置y轴保留2位小数点不生效

    uniapp使用echarts,在内置浏览器中,设置保留2位小数能正常显示(代码如下),但是在APP端这个设置不起作用。 app端不生效是因为: 在app端,回调函数无法从renderjs外传递,上面的设置使用了回调函数formatter,所以app端不生效。 解决方法 在引用echarts中,有一个初始化的文件

    2024年02月08日
    浏览(48)
  • java BigDecimal使用(小数点,字符串等转换)

    Java中提供了操作大数字(超过 16位 有效位)的类, 即 java.math.BigInteger 类和 java.math.BigDecimal 类,用于高精度计算。 float和Double只能用来做科学计算、工程计算等;在商业计算中,对数字精度要求较高(例如货币值),必须使用 BigInteger 类和 BigDecimal 类,它支持任何精度的定点数,

    2024年02月14日
    浏览(38)
  • chatgpt赋能python:Python去掉小数点的方法

    在Python编程中,经常会遇到需要去掉小数点的情况,比如输出整数等。本文将介绍常用的几种方法。 将浮点数转换为整数是最简单的方法之一,使用内置函数int()即可。 但需要注意的是,使用这种方法会直接截断小数部分,可能会导致精度损失。 使用内置函数round()可以对浮

    2024年02月11日
    浏览(40)
  • Java数字字符串去除小数点后末尾多余的0

    需求说明: 数字字符串去除小数点后末尾多余的0 如果字符串为空返回0,非数字则返回原字符串** 方法一(使用BigDecimal): 方法二(使用Float.parseFloat): 引用方法静态方法DecimalInputText :

    2024年02月11日
    浏览(82)
  • pandas中df取某列小数点后两位的四种方法

    读取文件 方法一 对x y两列取小数点后三位 方法二 对x y两列取小数点后三位 方法三 对带小数点的数据有效 将所有数据中的满足小数点的取三位 方法四 对y取小数点后两位

    2024年02月09日
    浏览(41)
  • unity将小数点精确到小数点后一位

    在 Unity 中,可以使用 Mathf.Round() 函数来将小数点精确到小数点后一位。例如: 在上面的代码中,我们将 num 乘以 10,然后使用 Mathf.Round() 函数对其进行四舍五入。最后,再将结果除以 10,得到精确到小数点后一位的数字。

    2024年02月13日
    浏览(45)
  • QString设置小数点精度位数

    QString 转double,double转QString 中的小数点问题 原文链接:https://blog.csdn.net/xxzhaoming/article/details/130364751 在Qt中,我们可以使用QString::number()函数将float类型转换为QString类型以便在界面上显示。该函数默认显示6位小数,但我们也可以通过设置第二个参数来控制小数点位数。 以下是

    2024年02月04日
    浏览(42)
  • python中如何改变小数点后位数

    在python中一般一般有三种改变小数点后位数的方法: 第一种:使用python内置的round()函数 a = 1.1314 a = 1.0000 a = 1.1267 b = round(a.2)b = round(a.2)b = round(a.2) output b = 1.13 output b = 1.0 output b = 1.13 第二种:使用python内置的format()函数 a = 1.1314 a = 1.0000 a = 1.1267 output b=1.13 outpu

    2023年04月08日
    浏览(37)
  • laravel 图表Apexchart 整数多出小数点

    Apexchart做统计界面发现一个问题,数据全是整数,但是还显示小数点,如下图:  网上很少有答案,自己研究了很久,分享下经验 第一种方案重新buildDefaultScript方法    第2种方案: 在图表配置加入可执行的 JS 代码 可以自己封装一个方法继承Chat 然后在调用 改写后效果如下

    2024年02月06日
    浏览(33)
  • 【iOS】UITextField中的输入检测——限制只能输入数字和小数点

    最近趁着放假时间,在看The Big Nerd Ranch的iOS编程,想着重新复习一遍iOS开发的基础知识 书中第四章有一个温度转换的app实现,整体实现并不难 其中有个问题—— 如何利用 UITextFieldDelegate 委托限制 UITextField 的输入 UITextFieldDelegate 里面有个函数 简单来说,就是通过这个函数处

    2024年01月20日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包