Java常用类——Math类、Random类

一、Math类

1、概述

  • Math 类包含了基本数学运算的方法,如:指数、对数、平方根、三角函数等

2、Math的成员方法

  • public static int abs(int a)
  • public static double ceil(double a)
  • public static double floor(double a)
  • public static int max(int a,int b)
  • public static double pow(double a,double b)
  • public static double random()
  • public static int round(float a)
  • public static double sqrt(double a)
package yunsuan;

public class MathDemo {
    public static void main(String[] args){
        System.out.println(Math.PI);//输出π的值
        System.out.println(Math.E);
        System.out.println(Math.abs(-10));//输出绝对值
        System.out.println(Math.ceil(12.99));//向上取整
        System.out.println(Math.ceil(12.01));//向上取整
        System.out.println("----------------------------");

        System.out.println(Math.floor(12.99));//向下取整
        System.out.println(Math.floor(12.01));//向下取整
        System.out.println(Math.max(12,19));//从两个数中找大的
        System.out.println(Math.min(12,19));//从两个数中找小的
        System.out.println(Math.pow(3,2));//3的2次方
        System.out.println("++++++++++++++++++++++++++++");

        System.out.println(Math.random());//0-1之间的随机数
        System.out.println(Math.round(3.14));//四舍五入
        System.out.println(Math.sqrt(4));//4的平方根
    }
}

3、案例
获取任意范围内的随机数

package yunsuan;

import java.util.Scanner;

public class MathDemo {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入开始数:");
        int start = sc.nextInt();
        System.out.println("请输入结束数:");
        int end = sc.nextInt();

        for (int i = 0; i < 3; i++){
            int num = getRandom(start,end);
            System.out.println("获取了一个"+start+"与"+end+"之间的随机数,数字为:"+num);
        }
    }

    private static int getRandom(int start, int end) {
        //int number = (int)(Math.random()*100) + 1;//这是0到100之间的随机数
        int number =  (int)(Math.random()*(end - start + 1)) + start;
        return number;
    }
}

二、Random类

1、概述

  • Random():产生一个随机数
  • Math.random():能够返回带正号的double值,该值大于等于0.0且小于1.0

2、构造方法

  • public Random()
  • public Random(long seed)

3、成员方法

  • public int nextInt()
  • public int nextInt(int n)
package yunsuan;

import java.util.Random;

public class MathDemo {
    public static void main(String[] args){
        Random r1 = new Random();//没有给值,返回当前时间的毫秒值
        Random r2 = new Random(1);
        System.out.println(r1.nextInt(100));
        System.out.println(r2.nextInt(100));
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_43860260/article/details/91423352