java基础---19. Math数学工具类

1 4方法+1变量

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

public static double abs(double num):获取绝对值。有多种重载。
public static double ceil(double num):向上(正方向)取整。
public static double floor(double num):向下取整。
public static double round(double num):四舍五入。

Math.PI是常量代表近似的圆周率(double)
 */
public class Demo03Math {
    public static void main(String[] args) {
        //获取绝对值
        System.out.println(Math.abs(3.14));//3.14
        System.out.println(Math.abs(0));//0
        System.out.println(Math.abs(-2.5));//2.5

        //向上取整
        System.out.println(Math.ceil(3.1));//4.0
        System.out.println(Math.ceil(3.9));//4.0
        System.out.println(Math.ceil(3.0));//3.0

        System.out.println(Math.ceil(-3.1));//-3.0
        System.out.println(Math.ceil(-3.9));//-3.0



        //向下取整
        System.out.println(Math.floor(3.1));//3.0
        System.out.println(Math.floor(3.9));//3.0
        System.out.println(Math.floor(3.0));//3.0

        System.out.println(Math.floor(-3.1));//-4.0
        System.out.println(Math.floor(-3.9));//-4.0

        //四舍五入
        System.out.println(Math.round(3.4));//3
        System.out.println(Math.round(3.5));//4

        System.out.println(Math.round(-3.1));//-3(取最近的整数)
        System.out.println(Math.round(-3.5));//-3(往正方向取)
        System.out.println(Math.round(-3.9));//-4(取最近的整数)
        //注意:四舍五入的结果是不带小数点的,以上获取绝对值、向上取整、向下取整的结果是带小数点的

    }
}

2 练习

  • 版本1
/*
题目:计算在-10.8到5.9之间,绝对值大于6或者小于2.1的整数有多少个?
 */
public class Demo04MathPractise {
    public static void main(String[] args) {
        double start = Math.ceil(-10.8);
        double end = Math.ceil(5.9);
        int count = 0;
        for(double i = start; i < end; i++ ) {
            double abs = Math.abs(i);
            if(abs > 6 || abs < 2.1){
                count++;
            }
        }
        System.out.println(count);//9
    }
}
  • 版本2
/*
题目:计算在-10.8到5.9之间,绝对值大于6或者小于2.1的整数有多少个?
 */
public class Demo04MathPractise {
    public static void main(String[] args) {
        int start = (int)-10.8;
        int end = (int)5.9;
        int count = 0;
        for(int i = start; i <= end; i++) {
            int abs = Math.abs(i);
            if(abs > 6 || abs < 2.1){
                count++;
            }
        }
        System.out.println(count);//9
    }
}

猜你喜欢

转载自www.cnblogs.com/deer-cen/p/12235433.html