App下載

淺談Java中的Math類和Random類 以及常用方法

猿友 2021-07-30 13:58:31 瀏覽數(shù) (2536)
反饋

本篇文章將為大家簡單地總結(jié)關于 Java 內(nèi)置包裝類之一的 Math 類,以及隨機類 Random 類的內(nèi)容,以及兩個類畢竟經(jīng)常使用的方法,供大家學習參考。

java的Math類

2021051809470929

java中的java.lang.Math類可以直接使用,不需要導包,在JDK的API 中看到Math類被final修飾著,那么說明了這個Math類不能被繼承,構(gòu)造器私有化,不能創(chuàng)建Math類的對象,也就是說

public static void main(String []args){
	Math m = new Math();
}

這種寫法是錯誤的

在這里插入圖片描述

Math內(nèi)部的所有的屬性和方法都被static修飾了,這說明在調(diào)用的時候直接使用類名.的方式直接調(diào)用,無需創(chuàng)建對象。
接下來介紹Math類中的幾個常用的方法:

方法 說明 返回值類型
random() 返回帶正號的雙精度值,大于或等于0.0,小于1.0。 static double
abs() 取數(shù)的絕對值,可以是int long double float int / long / double / float
ceil() 向上取值 返回一個double類型
floor() 向下取值 返回一個double類型
round() 四舍五入 返回一個long或者是int類型的值
max()和min() 返回最大值和最小值 返回的值可以是double、float、int、long類型的值
package Test;

public class Test06 {
    public static void main(String[] args) {
        //常用屬性:
        System.out.println(Math.PI);
        //常用的方法:
        System.out.println("隨機數(shù):" + Math.random());//[0.0,1.0)
        System.out.println("絕對值" + Math.abs(-80));
        System.out.println("向上取值" + Math.ceil(9.1));
        System.out.println("向下取值" + Math.floor(9.9));
        System.out.println("四舍五入" + Math.round(3.5));
        System.out.println("取大的那個值" + Math.max(3, 6));
        System.out.println("取小的那個值" + Math.min(3, 6));
    }
}

同樣Math類可以使用靜態(tài)導入的方式,直接導入Math類的所有方法和屬性

package Test;
//靜態(tài)導入

import static java.lang.Math.*;

public class Test07 {
    public static void main(String[] args) {
        //常用屬性:
        System.out.println(PI);
        //常用的方法:
        System.out.println("隨機數(shù):" + random());//[0.0,1.0)
        System.out.println("絕對值" + abs(-80));
        System.out.println("向上取值" + ceil(9.1));
        System.out.println("向下取值" + floor(9.9));
        System.out.println("四舍五入" + round(3.5));
        System.out.println("取大的那個值" + max(3, 6));
        System.out.println("取小的那個值" + min(3, 6));
    }
    //如果和Math中的方法重復了,程序會優(yōu)先選擇本類的方法,這就是就近原則
    public static int random(){
        return 100;
    }
}

java的Random類

2021051809471031

Random類在java.util.Random中

Random類的常用方法:

方法 說明
nextInt() 返回此隨機數(shù)生成器序列中的下一個偽隨機、均勻分布的int值。
nextDouble() 返回此隨機數(shù)生成器序列中的下一個偽隨機、均勻分布的介于0.0和1.0之間的雙精度值。
package Test;

import java.util.Random;

public class Test08 {
    public static void main(String[] args) {
        System.out.println("隨機數(shù)" + Math.random());
        //學習Random類
        //利用帶參數(shù)的構(gòu)造器創(chuàng)建對象
        Random r1 = new Random(System.currentTimeMillis());
        int i = r1.nextInt();
        System.out.println(i);
        //利用空參構(gòu)造器創(chuàng)建對象
        Random r2 = new Random();//表面是在調(diào)用無參構(gòu)造器,實際上底層還是調(diào)用了帶參構(gòu)造器
        System.out.println(r2.nextInt(10));
        System.out.println(r2.nextDouble());
    }
}

本篇關于 Java 中 Math 類和 Random 類基礎知識的總結(jié)以及常用方法說明的文章介紹到此就結(jié)束了,想要了解更多關于 Java Math類和Random類的詳細內(nèi)容,可以搜索W3Cschool相關技術(shù)文章,希望本篇文章能夠幫助到大家的學習。


0 人點贊