zoukankan      html  css  js  c++  java
  • java笔记14-数学相关类

    math类

    类所在的包

    java.lang 不需要导包

    类的关系

    继承object

    类对象的创建

    所有属性和方法都是静态 不需要创建对象

    类的属性和方法

    属性: PI---圆周率    E---E数

    方法:

    int=Math.abs(int)  绝对值 数字型的基本数据类型都支持long int float double

    int=Math.max(int a,int b)   返回最大值  如果传入数据类型不一致 返回值自动提升到范围较大的数据类型

    int=Math.min()   返回最小值  数字型的基本数据类型都支持long int float double

    double=Math.ceil()   ceil()向上取整,即大于这个数的最小的那个整数;

    double=Math.floor()  向下取整,即小于这个数的最大的那个整数;

    double=Math.rint()  返回最接近该值的那个整数。注意如果存在两个这样的整数,则返回其中的偶数

    int=Math.round()  返回四舍五入的int类型 (0.5的数取数轴右边的整数,这样比较好理解)  round(-1.5) //-1

    double=Math.pow(double a ,double b)  a的b次方返回double类型

    double=Math.sqrt(double a )  开根号

    double=Math.random()    取[0,1)的随机数 

      这个方法不能满足一些变态的需求 比如取5-10之间的随机数 double=Math.random()*5+5  5+0.999999999*5=10.9999999995 会有精度的损失

    Random类

      类所在的包

        java.util   需要导包  import java.util.Random;

      类的关系

        继承object

      类对象的创建

        Random r=new Random();

        Random r=new Random(long seed); -->种子数一样生成的随机数是一样的

      类的属性和方法

        int=r.nextInt();  随机生成一个int类型的数;默认范围是int取值范围,有写范围的方法重载int=r.nextInt(10);   0-9的整数

        long=r.nextLong();

        float=r.nextFloat(); 随机生成一个0-1的小数

        double=r.nextDouble(); 随机生成一个0-1的小数

        boolean=r.nextBoolean();  随机生成一个boolean值

        void=r.nextBytes[byte[] bytes]  随机生成一个byte放入到byte数组中

    BigInteger类 

      用于超大数字的计算

      类所在的包

        java.math   需要导包  import java.util.BigInteger;

      类的关系

        继承Number 

      类对象的创建 构造方法都是带参数的通常用Sring类型参数

        BigInteger big1=new BigInteger("123232132131232132132312321323");

        BigInteger big2=new BigInteger("123232132131232132132312321323");

      类的方法

        BigInteger=big1.abs() 返回大整数的绝对值

        BigInteger=big1.add(big2) 返回两个大整数的和

        BigInteger=big1.divide(big2) 返回两个大整数的商

        BigInteger=big1.subtract(big2) 返回两个大整数的差

        BigInteger=big1.and(BigInteger val) 返回两个大整数的按位与的结果

        BigInteger=big1.andNot(BigInteger val) 返回两个大整数与非的结果

        BigInteger=big1.max(BigInteger val) 返回两个大整数的最大者

        BigInteger=big1.min(BigInteger val) 返回两个大整数的最小者

        BigInteger=big1.mod(BigInteger val) 用当前大整数对val求模

        BigInteger=big1.multiply(BigInteger val) 返回两个大整数的积

        BigInteger=big1.negate() 返回当前大整数的相反数

        BigInteger=big1.pow(int) 返回当前大整数的次方

        BigInteger=big1.remainder(big2) 返回当前大整数除以val的余数

    BigInteger类 

      比double更精确的数

      类所在的包

        java.math   需要导包  import java.util.BigDecimal;

      类的关系

        继承Number 

      类对象的创建 构造方法都是带参数的通常用Sring类型参数

        BigInteger big1=new BigInteger("12323213213.1232132132312321323");

        BigInteger big2=new BigInteger("1232321321.31232132132312321323");

      类的方法

        BigInteger=big1.add(big2) 返回两个大整数的和

        BigInteger=big1.divide(big2) 返回两个大整数的商

        BigInteger=big1.subtract(big2) 返回两个大整数的差

        BigInteger=big1.multiply(BigInteger val) 返回两个大整数的积

        big1=big1.setScale(3,3);  --->处理小数点位数用setScale 第一个参数保留几位 第二个参数保留的方式 向上取整向下取整 四舍五入等

    DecimalFormat类 

        专业的格式化类   

        类所在的包

          java.text 

        类的关系

          继承NumberFormat

        类对象的创建

          0如果给定数字的位数不够用0填补、整数多了不处理、小数多了四舍五入

          #如果给定数字的位数不够不处理、整数多了不处理、小数多了四舍五入

          DecimalFormat decimal =new DecimalFormat("0");  //显示所有整数

          DecimalFormat decimal =new DecimalFormat("#"); //显示所有整数

          DecimalFormat decimal =new DecimalFormat("000.000");   12.34 --> 012.340

          DecimalFormat decimal =new DecimalFormat("000.###");   1234.3333 --->  1234.333

          DecimalFormat decimal =new DecimalFormat("000.###%"); //百分比展示  0.3432 ---->  034.32%

          DecimalFormat decimal =new DecimalFormat(",###"); //以逗号隔开  123456789 --->   123,456,789

        类的方法

          String value =decimal.format(1222.3335);

          

            

        

        

     

     

     

  • 相关阅读:
    数据表分区, 全新分区
    SSIS基础设计最佳实践
    数据表分区, 普通表转分区表
    关于游标[二]
    弹窗代码汇集
    关于分页显示中的换行显示原理代码
    C# 装箱和拆箱[整理]
    insert into tablename select * from tablename与Select * into tablename from tablename 比较[转]
    SQL Server应用程序中的高级SQL注入
    CHARINDEX使用【转】
  • 原文地址:https://www.cnblogs.com/ysmdbk/p/11026764.html
Copyright © 2011-2022 走看看