java中的数学工具类Math(round方法是重点)

数学工具类Math

1. 概述

java.util.Math类是数学相关的工具类,里面提供了大量的静态方法,完成与数学运算相关的操作。

2. 基本的方法

public static double abs(double num);获取绝对值。有多种重载,absolutely绝对地
public static double ceil(double num);向上取整,ceil是天花板的意思
public static double floor(double num);向下取整,floor是地板的意思
public static long round(double num);四舍六入五成双(看下面代码的注释),round有大约,完整的意思

3. 四种方法一起通过代码演示一遍

public class MathMethod {
    public static void main(String[] args) {
        //abs方法,取绝对值
        System.out.println(Math.abs(3.14)); //3.14
        System.out.println(Math.abs(0));    //0
        System.out.println(Math.abs(-2.2)); //2.2

        System.out.println("---------------------");

        //ceil方法,向上取整,往大的靠
        System.out.println(Math.ceil(3.2));  //4.0
        System.out.println(Math.ceil(3.8));  //4.0
        System.out.println(Math.ceil(-3.2)); //-3.0
        System.out.println(Math.ceil(-3.8)); //-3.0

        System.out.println("---------------------");
        
        //floor方法,向下取整,往小的靠
        System.out.println(Math.floor(3.2));  //3.0
        System.out.println(Math.floor(3.8));  //3.0
        System.out.println(Math.floor(-3.2)); //-4.0
        System.out.println(Math.floor(-3.8)); //-4.0

        System.out.println("---------------------");

        //【注意,面试高频】round方法,四舍 六入 五成双
        //先看看四舍六入,如果出现负数,先转成正数,再四舍六入,最后加上负号
        System.out.println(Math.round(3.4));  //3
        System.out.println(Math.round(3.6));  //4
        System.out.println(Math.round(-3.4)); //-3
        System.out.println(Math.round(-3.6)); //-4
        //五成双是什么意思呢?当出现0.5结尾的时候,就给它再加上+0.5,5不就成双了
        //接着再对相加的结果进行floor运算
        System.out.println(Math.round(-2.5));  //-2
        System.out.println(Math.floor(-2.5 + 0.5));  //与Math.round(-2.5)结果一致

		System.out.println(Math.round(2.5));  //3
        System.out.println(Math.floor(2.5 + 0.5));  //与Math.round(2.5)结果一致
    }
}

4. 圆周率Math.PI

在Math类的源码中,我们可以看到,它自定义的圆周率 PI = 3.14159265358979323846

以后的计算如果需要用到PI,尽量用已经定义好的圆周率,非常精确

你可能感兴趣的:(黑马程序员java学习笔记)