zoukankan      html  css  js  c++  java
  • Math类 BigInteger 类 BigDecimal类 基础用法

    1.   Math类概念

    Math 类是包含用于执行基本数学运算的方法的数学工具类,其所有方法均为静态方法。

    类方法:

    复制代码
    public class Demo01 {
        public static void main(String[] args) {
            //求绝对值
            System.out.println(Math.abs(-2.8));
            //向上取整
            System.out.println(Math.ceil(12.2));
            //向下取整
            System.out.println(Math.floor(12.8));
            //求两个值的最大值
            System.out.println(Math.max(12.3, 89));
            //求两个值的最小值
            System.out.println(Math.min(54, 12));
            //求随机数
            System.out.println(Math.random());
            //四舍五入
            System.out.println(Math.round(45.3));
            //次幂
            System.out.println(Math.pow(2, 8));
        }
    }
    复制代码

    2  Arrays类

    复制代码
    public class Demo02 {
        public static void main(String[] args) {
            //数组排序
            int []arr={2,5,2,6,8,9};
            Arrays.sort(arr);
            for(int i=0;i<arr.length;i++){
                System.out.print(arr[i]+" ");
            }
            System.out.println();
            //在数组里查找指定值的索引值
            //前提:数组必须有序
            //如果查询的值在数组中不存在,index=-(这个值应该在的位置)-1
            int[]a2={1,3,55,66,99};
            int index=Arrays.binarySearch(a2, 66);
            System.out.println(index);
            //将int[]——>String
            System.out.println(Arrays.toString(a2));
        }
    }
    复制代码

    3     BigInteger大数据

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

    复制代码
    public class Demo03 {
        public static void main(String[] args) {
            BigInteger b1=new BigInteger("1000000000000000000000000000000000000");
            BigInteger b2=new BigInteger("9000000000000000000000000000000000000");
            //加法
            System.out.println(b1.add(b2));
            //减法
            System.out.println(b2.subtract(b1));
            //乘法
            System.out.println(b1.multiply(b2));
            //除法
            System.out.println(b2.divide(b1));
        }
    }
    复制代码

    4     BigDecimal类

    double和float类型在运算中很容易丢失精度,造成数据的不准确性,Java提供我们BigDecimal类可以实现浮点数据的高精度运算

    复制代码
    public class Demo04 {
        public static void main(String[] args) {
            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.301");
            BigDecimal b8=new BigDecimal("100");
            System.out.println(b7.divide(b8));
            //向上取整并保留两位小数
            System.out.println(b7.divide(b8,2,BigDecimal.ROUND_CEILING));
        }
    }
    复制代码
  • 相关阅读:
    MCS锁——可伸缩的自旋锁
    The Art of Multiprocessor Programming读书笔记 (更新至第3章)
    在Visual Studio 2015的Cordova项目中使用Gulp
    SharePoint服务器端对象模型 之 使用LINQ进行数据访问操作(Part 1)
    SharePoint服务器端对象模型 之 使用CAML进行数据查询(Part 4)
    knockoutJs在移动设备上有时无法更新控件值
    SharePoint服务器端对象模型 之 使用CAML进行数据查询(Part 3)
    SharePoint服务器端对象模型 之 使用CAML进行数据查询(Part 2)
    SharePoint服务器端对象模型 之 使用CAML进行数据查询
    SharePoint服务器端对象模型 之 访问文件和文件夹(Part 4)
  • 原文地址:https://www.cnblogs.com/lxzwhite/p/10701161.html
Copyright © 2011-2022 走看看