zoukankan      html  css  js  c++  java
  • math类和biginteger类

    Math类:这种工具类,一般不会创建对象,方法为静态方法,直接调用

    package com.oracle.demo02;
    
    public class MathDemo {
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            //绝对值
            System.out.println(Math.abs(-99));
            //向上取整
            System.out.println(Math.ceil(12.2));
            //向下取整
            System.out.println(Math.floor(12.2));
            //取最大值
            System.out.println(Math.max(111,333));
            //取最小值
            System.out.println(Math.min(111,333));
            //取次幂
            System.out.println(Math.pow(2,3));
            //取随机数
            System.out.println(Math.random());
            //四舍五入
            System.out.println(Math.round(12.2));
            //π
            System.out.println(Math.PI);
        }
    
    }

    Array类:操作数组的一些方法

    package com.oracle.demo02;
    
    import java.util.Arrays;
    
    public class ArraysDemo {
        public static void main(String[] args) {
            method1();
            
            
        }
        public static void method(){
            int[] arr = {3,6,9,11,15};
            //返回指定值对应的索引值(数组必须有序)
            //如果不存在,索引值=(-当前索引-1)
            int i = Arrays.binarySearch(arr, 6);
            System.out.println(i);
        }
        public static void method1(){
            int[] arr = {5,7,1,3,2,9,};
            Arrays.sort(arr);
            System.out.println(Arrays.toString(arr));
    //        for(int i:arr){
    //            System.out.print(i);
    //        }
        }
    }

    BigInteger类:比long类型的数据还大的值

    package com.oracle.demo02;
    
    import java.math.BigInteger;
    
    public class BigDemo {
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            method();
        }
        public static void method(){
            BigInteger bi =new BigInteger("100000000000000000000000000000000000000000");
            BigInteger bi2 = new BigInteger("20000000000000000000000000000000000000000");
            //加法
            System.out.println(bi.add(bi2));
            //减法
            System.out.println(bi.subtract(bi2));
            //乘法
            System.out.println(bi.multiply(bi2));
            //除法
            System.out.println(bi.divide(bi2));
        }
    }

    BigDecimal类:避免精度损失的

    package com.oracle.demo02;
    
    import java.math.BigDecimal;
    
    public class BigDemo01 {
        public static void main(String[] args) {
            method3();
        }
        public static void method(){
            BigDecimal bd1 = new BigDecimal("0.09");
            BigDecimal bd2 = new BigDecimal("0.01");
            System.out.println(bd1.add(bd2));
        }
        public static void method1(){
            BigDecimal bd1 = new BigDecimal("1.0");
            BigDecimal bd2 = new BigDecimal("0.31");
            System.out.println(bd1.subtract(bd2));
        }
        public static void method2(){
            BigDecimal bd1 = new BigDecimal("1.015");
            BigDecimal bd2 = new BigDecimal("100");
            System.out.println(bd1.multiply(bd2));
        }
        public static void method3(){
            BigDecimal bd1 = new BigDecimal("1.301");
            BigDecimal bd2 = new BigDecimal("100");
            System.out.println(bd1.divide(bd2,BigDecimal.ROUND_FLOOR,3));
        }
    }

    注意 在除法运算的时候要用divide()方法的参数类型来进行小数位数的控制

  • 相关阅读:
    CSS 文本
    javascript:void(0)的问题
    剑指offer
    牛课--C/C++
    Linux学习--第二波
    面经-csdn
    初学Linux
    二分查找法的实现和应用汇总
    vs2013下git的使用
    win10+vs2013+Qt5.4 安装方法
  • 原文地址:https://www.cnblogs.com/yelena-niu/p/9111852.html
Copyright © 2011-2022 走看看