Java基礎(chǔ)之Math和Random類知識總結(jié)
java的Math類
java中的java.lang.Math類可以直接使用,不需要導(dǎo)包,在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("隨機(jī)數(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)導(dǎo)入的方式,直接導(dǎo)入Math類的所有方法和屬性
package Test; //靜態(tài)導(dǎo)入 import static java.lang.Math.*; public class Test07 { public static void main(String[] args) { //常用屬性: System.out.println(PI); //常用的方法: System.out.println("隨機(jī)數(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中的方法重復(fù)了,程序會優(yōu)先選擇本類的方法,這就是就近原則 public static int random(){ return 100; } }
java的Random類
Random類在java.util.Random中
Random類的常用方法:
方法 | 說明 |
nextInt() | 返回此隨機(jī)數(shù)生成器序列中的下一個偽隨機(jī)、均勻分布的int值。 |
nextDouble() | 返回此隨機(jī)數(shù)生成器序列中的下一個偽隨機(jī)、均勻分布的介于0.0和1.0之間的雙精度值。 |
package Test; import java.util.Random; public class Test08 { public static void main(String[] args) { System.out.println("隨機(jī)數(shù)" + Math.random()); //學(xué)習(xí)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)造器,實(shí)際上底層還是調(diào)用了帶參構(gòu)造器 System.out.println(r2.nextInt(10)); System.out.println(r2.nextDouble()); } }
到此這篇關(guān)于Java基礎(chǔ)之Math和Random類知識總結(jié)的文章就介紹到這了,更多相關(guān)java的Math和Random類內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MyBatis?handleResultSet結(jié)果集解析過程示例
這篇文章主要為大家介紹了MyBatis?handleResultSet結(jié)果集解析過程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02SpringBoot整合Liquibase實(shí)現(xiàn)對數(shù)據(jù)庫管理和遷移
Liquibase是一個用于用于跟蹤、管理和應(yīng)用數(shù)據(jù)庫變化的開源工具,通過日志文件(changelog)的形式記錄數(shù)據(jù)庫的變更(changeset),然后執(zhí)行日志文件中的修改,將數(shù)據(jù)庫更新或回滾(rollback)到一致的狀態(tài),本文主要介紹SpringBoot與Liquibase的集成,需要的朋友可以參考下2024-11-11快速入門介紹Java中強(qiáng)大的String.format()
這篇文章主要給大家介紹了如何快速入門介紹Java中強(qiáng)大的String.format()的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2018-03-03