• Math类Arrays类


    Math 类是包含用于执行基本数学运算的方法的数学工具类,如初等指数、对数、平方根和三角函数。

    类似这样的工具类[L1] ,其所有方法均为静态方法,并且一般不会创建对象。如System类


    工具类,代表能够完成一系列功能的类,在使用它们时,不用创建对象,该类中方法为静态方法

    求绝对值:Math.abs(-90.3);结果90.3

    向上取整(就是算12.9结果也是13):Math.ceil(12.1)结果13; 

    向下取整(就算是12.9结果也是12):Math.floor(12.1)结果是12
    四舍五入:

                 Math.round(12.4)结果是12;

                Math.round(12.9)结果是13;

    获取两个数的最大值:Math.max(22,12)结果是22;

    获取两个数的最小值:Math.min(22,12)结果是12
    求次幂;就是2的10次方:Math.pow(2,10);

    求0-1之间的随机小数:Math.random();

     

     Arrays


    Arrays的用法:int i=[1,2,3] 

    int index=Arrays.binarySearch(i,2)结果index=1;

    i就是数组名称,2代表下标值。

    这个是查找数组中具体数值的下标;

    如果元素不存在那么返回的是改元素应该所在的下标(负  的)-1减1;-1-1=-2;


    数组排序:Arrays.sort(arr);就是给arr数组进行排序,顺序是由小到大
    将数组转成字符进行输出,效果相当于for遍历:Arrays.toString(arr)
     Arrays就是操作数字的工具(搜索和排序);如果指定的数组是值是null;就会出现空指针异常错误

    大数据运算:

     java中long型为最大整数类型,对于超过long型的数据如何去表示呢.在Java的世界中,超过long型的整数已经不能被称为整数了,它们被封装成BigInteger对象.在BigInteger类中,实现四则运算都是方法来实现,并不是采用运算符.

    BigInteger(Integer类型的数值)和BigDecimal(Double类型的数值);

     

      对于浮点数据的除法运算,和整数不同,可能出现无限不循环小数,因此需要对所需要的位数进行保留和选择舍入模式

    BigInteger的四则运算:

    BigInteger n1=new BigInteger("100000000000000");

    BigInteger n2=new BigInteger("200000000000000");
    1、加法:n1.add(n2)              2.减法:n2.subtract(n1);      

    3.乘法:n1.multiply(n2);        4.除法:n2.divide(n1)

     

    BigDecimal的四则运算:
    BigDecimal(可以解决计算失精度的问题)的四则运算:   BigDecimal num1=new BigDecimal("0.09");

    BigDecimal num2=new BigDecimal("0.03");
    1.加法:num1.add(num2)   2.减法:num2.subtract(num1)  3.乘法:num1.multiply(num2)  4.除法:num2.divide(num1)

    Math类
     
    package com.oracle.demo02;
    public class Demo01 {
    public static void main(String[] args) {
      //获取觉对值
      System.out.println(Math.abs(-90.3));//90.3 
      //向上取整,取自己本身
      System.out.println(Math.ceil(12.1));//  13.0
     //向下取整 ,取自己本身
      System.out.println(Math.floor(12.1));//12.0
      //四舍五入
      System.out.println(Math.round(12.3));//12
      //获取两个数的最大值
      System.out.println(Math.max(12, 22));//22
      //获取两个住的最小值
      System.out.println(Math.min(12, 22));// 12
      //求次幂
      System.out.println(Math.pow(2,  10));//1024.0
      //求0-1之间的随机小数
      System.out.println(Math.random());// 0.3847030033920509
    }
    }
    Arrays;
    package com.oracle.demo02;
    import java.util.Arrays;
     public class Demo02 {
    public static void main(String[] args) {
       int[] arr= {1,13,24,26,33,44,55};
      //调用 binarysearch 前提:数组必修为有序数组
       //如果元素在集合中不存在,那返回这个值在的位置-1
       int index=Arrays.binarySearch(arr, 24);
       System.out.println(index);//2
       //排序
       int [] arr2= {1,5,6,7,5,9,4,12,33,4};
        Arrays.sort(arr2);
        //将数组——》字符串
        System.out.println(Arrays.toString(arr2))
    }
    }
    
     
    
     
    BigInteger

    package com.oracle.demo02;

     

    package com.oracle.demo02;
    import java.math.BigInteger;
     public class Demo03 {
      public static void main(String[] args) { 
           BigInteger bi=new  BigInteger("1000000000000000000000000");
           BigInteger b2=new  BigInteger("1000000000000000000000000");
           //加法
           System.out.println(bi.add(b2));//2000000000000000000000000
           //减法
           System.out.println(b2.subtract(bi));//数太大了
           //乘法
           System.out.println(bi.multiply(b2));
           //除法
           System.out.println(b2.divide(bi));
      }
    } 

    BigDecimal

    import java.math.BigDecimal;
    
     
    
    public class Demo04 {
    public static void main(String[] args) {
          //丢精度
          System.out.println(0.09 + 0.01);
          System.out.println(1.0 - 0.32);
          System.out.println(1.015 * 100);
          System.out.println(1.301 / 100);
          //精确计算
         BigDecimal b1=new  BigDecimal("0.09");
          BigDecimal b2=new  BigDecimal("0.01");    
         System.out.println(b1.add(b2));
          //加法
          BigDecimal b3=new  BigDecimal("1.0");
          BigDecimal b4=new  BigDecimal("0.32");
          System.out.println(b3.subtract(b4));
          //减法
          BigDecimal b5=new  BigDecimal("1.015");
          BigDecimal b6=new  BigDecimal("100");
          System.out.println(b5.multiply(b6));
    //除法
    BigDecimal b7=new BigDecimal("1.015"); BigDecimal b8=new BigDecimal("100"); System.out.println(b7.divide(b8)); } }
  • 相关阅读:
    Vue项目问题-TypeError: this.getOptions is not a function
    JavaScript学习-JavaScript 如何工作:对引擎、运行时、调用堆栈的概述
    JavaScript学习-理解JavaScript中的执行上下文和执行栈
    Element-ui中的给el-row添加一个gutter间隔不生效
    Vue-cil3 配置路径别名详解
    常见的内存泄漏以及解决方案
    Vue学习-组件之间的8种通信方式
    JavaScript学习-WeakMap和Map的区别,WeakMap的原理,为什么能被GC?
    Javascript学习-WeakMap
    JavaScript学习-Map
  • 原文地址:https://www.cnblogs.com/layuechuquwan/p/11352956.html
Copyright © 2020-2023  润新知