Java基礎(chǔ)之Math和Random類(lèi)知識(shí)總結(jié)
java的Math類(lèi)
java中的java.lang.Math類(lèi)可以直接使用,不需要導(dǎo)包,在JDK的API 中看到Math類(lèi)被final修飾著,那么說(shuō)明了這個(gè)Math類(lèi)不能被繼承,構(gòu)造器私有化,不能創(chuàng)建Math類(lèi)的對(duì)象,也就是說(shuō)
public static void main(String []args){ Math m = new Math(); }
這種寫(xiě)法是錯(cuò)誤的
Math內(nèi)部的所有的屬性和方法都被static修飾了,這說(shuō)明在調(diào)用的時(shí)候直接使用類(lèi)名.
的方式直接調(diào)用,無(wú)需創(chuàng)建對(duì)象。
接下來(lái)介紹Math類(lèi)中的幾個(gè)常用的方法:
方法 | 說(shuō)明 | 返回值類(lèi)型 |
random() | 返回帶正號(hào)的雙精度值,大于或等于0.0,小于1.0。 | static double |
abs() | 取數(shù)的絕對(duì)值,可以是int long double float | int / long / double / float |
ceil() | 向上取值 | 返回一個(gè)double類(lèi)型 |
floor() | 向下取值 | 返回一個(gè)double類(lèi)型 |
round() | 四舍五入 | 返回一個(gè)long或者是int類(lèi)型的值 |
max()和min() | 返回最大值和最小值 | 返回的值可以是double、float、int、long類(lèi)型的值 |
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("絕對(duì)值" + 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("取大的那個(gè)值" + Math.max(3, 6)); System.out.println("取小的那個(gè)值" + Math.min(3, 6)); } }
同樣Math類(lèi)可以使用靜態(tài)導(dǎo)入的方式,直接導(dǎo)入Math類(lèi)的所有方法和屬性
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("絕對(duì)值" + abs(-80)); System.out.println("向上取值" + ceil(9.1)); System.out.println("向下取值" + floor(9.9)); System.out.println("四舍五入" + round(3.5)); System.out.println("取大的那個(gè)值" + max(3, 6)); System.out.println("取小的那個(gè)值" + min(3, 6)); } //如果和Math中的方法重復(fù)了,程序會(huì)優(yōu)先選擇本類(lèi)的方法,這就是就近原則 public static int random(){ return 100; } }
java的Random類(lèi)
Random類(lèi)在java.util.Random中
Random類(lèi)的常用方法:
方法 | 說(shuō)明 |
nextInt() | 返回此隨機(jī)數(shù)生成器序列中的下一個(gè)偽隨機(jī)、均勻分布的int值。 |
nextDouble() | 返回此隨機(jī)數(shù)生成器序列中的下一個(gè)偽隨機(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類(lèi) //利用帶參數(shù)的構(gòu)造器創(chuàng)建對(duì)象 Random r1 = new Random(System.currentTimeMillis()); int i = r1.nextInt(); System.out.println(i); //利用空參構(gòu)造器創(chuàng)建對(duì)象 Random r2 = new Random();//表面是在調(diào)用無(wú)參構(gòu)造器,實(shí)際上底層還是調(diào)用了帶參構(gòu)造器 System.out.println(r2.nextInt(10)); System.out.println(r2.nextDouble()); } }
到此這篇關(guān)于Java基礎(chǔ)之Math和Random類(lèi)知識(shí)總結(jié)的文章就介紹到這了,更多相關(guān)java的Math和Random類(lèi)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于RowBounds分頁(yè)原理、RowBounds的坑記錄
這篇文章主要介紹了關(guān)于RowBounds分頁(yè)原理、RowBounds的坑記錄,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04超詳細(xì)講解SpringCloud?Commons公共抽象的用法
這篇文章主要介紹了超詳細(xì)講解SpringCloud?Commons公共抽象的用法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04解決Spring配置文件中bean的property屬性中的name出錯(cuò)問(wèn)題
這篇文章主要介紹了解決Spring配置文件中bean的property屬性中的name出錯(cuò)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07Java實(shí)現(xiàn)常見(jiàn)排序算法的優(yōu)化
今天給大家?guī)?lái)的是關(guān)于Java的相關(guān)知識(shí),文章圍繞著Java實(shí)現(xiàn)常見(jiàn)排序算法的優(yōu)化展開(kāi),文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下2021-01-01如何在spring事務(wù)提交之后進(jìn)行異步操作
這篇文章主要為大家介紹了如何在spring事務(wù)提交之后進(jìn)行異步操作,這些異步操作必須得在該事務(wù)成功提交后才執(zhí)行,回滾則不執(zhí)行,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2023-09-09