zoukankan      html  css  js  c++  java
  • 8 math类

    最终类 提供了基本的数学运算,提供了大量的静态方法,如果想要更加有难度的,查看math包

    strictfp:运算提升到80位。

    BigDecimal可以用作小数的之间的精确运算,但是参数要是字符串
        public strictfp static void main(String[] args) {
            // TODO Auto-generated method stub
         //天花板函数向上取整
            System.out.println(Math.ceil(2.18));//3
            //地板函数
            System.out.println(Math.floor(2.68));//2
            //四舍五入
            System.out.println(Math.round(4.56));//5
            
            
            //伪随机小数,大于等于0.0小于1.0
            System.out.println(Math.random());
            
            //大部分小数的二进制的补码是无线位数,但是存储的位数是有限的所以不能精确运算
            double i=2.10-1.98;
            System.out.println(i);//0.1200000000000001
            //精确点的运算
            BigDecimal b1=new BigDecimal(2.1);
            BigDecimal b2=new BigDecimal(1.98);
            System.out.println(b1.subtract(b2));//0.120000000000000106581410364015027880668640136718750
            //精确运算,参数是字符串,相当于相应位上相减 ,抛弃了补码运算因为补码肯定无法算的精确的
            BigDecimal b3=new BigDecimal("2.1");
            BigDecimal b4=new BigDecimal("1.98");
            System.out.println(b3.subtract(b4));
            
        }

    2.超大数

        BigInteger bi1=new BigInteger("64545645645645656644611561");
            BigInteger bi2=new BigInteger("465156184861516684515845135146848648646");
            //相乘
            System.out.println(bi1.multiply(bi2));

    3.保留小数位

      //DecaimalFormat---进行格式化
            //用float会有点小问题
            double x=0.26559;
            //0是占位符,如果这个位上有值就把值展示出来,没值就展示0
            DecimalFormat df=new DecimalFormat("0.0000000");//0.2655900
            System.out.println(df.format(x));
            //#号是另一个占位符如果这个位上有值就把值展示出来,没值就不展示
            DecimalFormat da=new DecimalFormat("#.########");
            System.out.println(da.format(x));
  • 相关阅读:
    windowsCE常用编译参数 及编译器列表
    摘抄System Architecture for Native Device Drivers
    django+vue学习系列
    FreeTextBox的ToolbarButton整理
    FreeTextBox实现机制
    Server的Transfer和Response的Redirect
    FTB2.0和CuteEditor的一些问题
    ASP.NET跨应用程序进行登录的解决
    testFTB2.0
    Rainbow分页解决方案
  • 原文地址:https://www.cnblogs.com/xuwangqi/p/11196505.html
Copyright © 2011-2022 走看看