一区二区三区中文国产亚洲_另类视频区第一页_日韩精品免费视频_女人免费视频_国产综合精品久久亚洲

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術(shù)干貨  > 數(shù)字相關(guān)的類有哪些?

數(shù)字相關(guān)的類有哪些?

來源:千鋒教育
發(fā)布人:zyh
時間: 2023-06-13 17:25:00 1686648300

  全文大約【3000】字,不說廢話,只講可以讓你學到技術(shù)、明白原理的純干貨!本文帶有豐富的案例及配圖視頻,讓你更好地理解和運用文中的技術(shù)概念,并可以給你帶來具有足夠啟迪的思考......

數(shù)字相關(guān)的類有哪些

  一. Number類

  1.內(nèi)容回顧

  在學習Java里的Math數(shù)學類之前,我們再來回顧一下之前學習過的Number數(shù)字類。

  我們知道,Java里的數(shù)據(jù)類型可以分為引用類型和基本類型,其中基本類型有3大類8個子類,如下圖所示:

1683539612414.image

  2.數(shù)字格式化

  我們在使用數(shù)字時,很多時候并不只是簡單地原文展示,還要對這些數(shù)字進行各種格式化操作,比如設(shè)置小數(shù)點后幾位、數(shù)字后帶%號或貨幣符號等。這種使用場景,在解決實際問題時是很普遍的。但我們不用在數(shù)字后手動添加,Java自帶了一個DecimalFormat類,可以對數(shù)字進行格式化處理。

  DecimalFormat是NumberFormat的子類,用于格式化十進制數(shù)字,該類包含一個模式和一組符號,這些常用的符號含義如下:

1683537595325.image

  接下來小編通過一個案例來演示DecimalFormat的用法:  


public class Demo08 {
public static void main(String[] args) {
// 實例化DecimalFormat類對象,并設(shè)置格式
//小數(shù)點后保留1位
DecimalFormat df1 = new DecimalFormat("0.0");
//整數(shù)格式
DecimalFormat df2 = new DecimalFormat("#.#");
//小數(shù)點后保留3位小數(shù)
DecimalFormat df3 = new DecimalFormat("000.000");
//以100%百分比格式顯示
DecimalFormat df4 = new DecimalFormat("#%");

float f = 1000f;
// 對輸入的數(shù)字應(yīng)用格式,并輸出結(jié)果
System.out.println("0.0格式:" + df1.format(f));
System.out.println("#.#格式:" + df2.format(f));
System.out.println("000.000格式:" + df3.format(f));
System.out.println("百分比格式:" + df4.format(f));
}
}

  二. Math數(shù)學類

  1.簡介

  在開發(fā)的時候,我們經(jīng)常需要對數(shù)字進行各種數(shù)學計算,雖然Java給我們提供了+、-、*、/ 和 % 等基本算術(shù)運算符,但這些符號并不能進行更復雜的數(shù)學運算,例如三角函數(shù)、對數(shù)運算、指數(shù)運算等。所以為了方便實現(xiàn)這些數(shù)學計算功能,Java自身就給我們提供了一個Math數(shù)學類,用于進行各種常見的數(shù)學操作。

  Math中提供了用于執(zhí)行基本數(shù)學運算的多個屬性和方法,如初等指數(shù)、對數(shù)、平方根和三角函數(shù)等。Math 類位于 java.lang包中,它的構(gòu)造方法是 private私有的,因此我們無法創(chuàng)建 Math類對象。為了方便調(diào)用這些方法和屬性,Math類中的很多方法和屬性都被定義為static形式,這樣我們就可以直接調(diào)用了。

  接下來小編就給大家分別介紹一下Math類中的常用屬性和方法,這些方法比較多,大家不用專門的記憶,以后用到時根據(jù)名字就能猜出來它們的功能。但是對于一些容易引起混淆的方法,小編還是希望大家要稍微記一下。

  2.靜態(tài)常量

  Math類給我們提供了兩個比較常用的靜態(tài)常量,分別是 E 和 PI,它們的值分別等于 e(自然對數(shù)) 和 π(圓周率)。這兩個屬性我們可以直接調(diào)用,如下所示:  

public static void main(String[] args) {
//靜態(tài)常量E和PI
System.out.println("E常量的值:" + Math.E);
System.out.println("PI常量的值:" + Math.PI);
}

  3.計算最大值、最小值和絕對值

  我們還經(jīng)常對數(shù)字計算最大值、最小值和絕對值,Math類中提供了對應(yīng)的多個重載方法,這些方法如下表所示:

1683537983342.image

  以上這4個方法,分別都有4個重載方法,主要是方法的參數(shù)類型不同,而且返回值也不同,它們都可以接收int、long、float、double 4種類型的參數(shù)。這幾個方法的用法如下:  

public static void main(String[] args) {
//計算最大值、最小值、絕對值
System.out.println("5和35中的最大值:" + Math.max(35, 5));
System.out.println("0.1和-100中的較小值:" + Math.min(0.1, -100));
System.out.println("-900的絕對值:" + Math.abs(-900));
}

  4.求整運算

  Math類給我們提供了好幾個用于求整的方法,用于得到整數(shù)部分,如下表所示:

1683538850226.image

  以上方法的用法如下所示: 

import java.util.Scanner;

public class Demo03 {

public static void main(String[] args) {
//求整運算
Scanner input = new Scanner(System.in);
System.out.println("請輸入一個數(shù)字...");
//num=10.5
double num = input.nextDouble();

//向上取整
System.out.println("向上取整:"+Math.ceil(num));//11.0

//向下取整
System.out.println("向下取整:"+Math.floor(num));//10.0

//四舍五入
System.out.println("四舍五入:"+Math.round(num));//11

//返回最接近num的整數(shù)值,如果有兩個同樣接近的整數(shù),則結(jié)果取偶數(shù).
System.out.println("最接近 "+num+" 的整數(shù):" + Math.rint(num));//10.0
}

}

  5.三角函數(shù)運算

  Math中還給我們提供了用于計算三角函數(shù)的方法,如下表所示:

1683538893452.image

  以上方法的用法如下所示:  

public class Demo04 {

public static void main(String[] args) {
//三角函數(shù)運算
//Math.sin()方法參數(shù)的單位是弧度,90度表示的是角度,需要把90度轉(zhuǎn)換為弧度,即Math.PI/180*90,故轉(zhuǎn)換后的弧度為Math.PI/2
System.out.println("90度的正弦值:" + Math.sin(Math.PI/2));
System.out.println("0度的余弦值:" + Math.cos(0));
System.out.println("30的正切值:" + Math.tan(30));
System.out.println("30的反正切值:" + Math.atan(30));
System.out.println("1.8弧度的角度值:" + Math.toDegrees(1.8));
System.out.println("100度的弧度值:" + Math.toRadians(100.0));
}

}

  6.指數(shù)運算

  指數(shù)運算包括求方根、取對數(shù)、求n次方等運算,Math類中定義的指數(shù)運算方法如下表所示:

1683538933094.image

  以上方法的用法如下所示:  

public static void main(String[] args) {
//指數(shù)運算
System.out.println("5的立方值:" + Math.pow(5, 3));
//求a的立方根,參數(shù)是要開立方的數(shù)
System.out.println("27的立方根:"+Math.cbrt(27));
System.out.println("16的平方根:" + Math.sqrt(16));
System.out.println("10為底,2的對數(shù):" + Math.log10(2));
}

  7.生成隨機數(shù)

  在Math類中還給我們提供了一個用于生成[01)范圍內(nèi)隨機數(shù)的random()方法。該方法沒有參數(shù),它默認會返回一個 >=0.0、<1.0 的 double類型隨機數(shù),即隨機數(shù)的取值范圍是[01)。我們只需對 random()方法的返回值稍加處理,即可產(chǎn)生任意范圍內(nèi)的隨機數(shù)。該方法使用比較簡單,案例如下:

//隨機數(shù) 默認的范圍[0,1)
System.out.println(Math.random());

//隨機生成一個兩位數(shù),[0,1)*90,0,90) + 10
System.out.println((int)(Math.random()*90)+10);
聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內(nèi)將與您1V1溝通
免費領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學 138****2860 剛剛成功領(lǐng)取
王同學 131****2015 剛剛成功領(lǐng)取
張同學 133****4652 剛剛成功領(lǐng)取
李同學 135****8607 剛剛成功領(lǐng)取
楊同學 132****5667 剛剛成功領(lǐng)取
岳同學 134****6652 剛剛成功領(lǐng)取
梁同學 157****2950 剛剛成功領(lǐng)取
劉同學 189****1015 剛剛成功領(lǐng)取
張同學 155****4678 剛剛成功領(lǐng)取
鄒同學 139****2907 剛剛成功領(lǐng)取
董同學 138****2867 剛剛成功領(lǐng)取
周同學 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
PUE是什么?

一、PUE是什么PUE,即功耗比(Power Usage Effectiveness),是數(shù)據(jù)中心的能源效率指標。它是數(shù)據(jù)中心總功耗與設(shè)備功耗的比值,用于評估數(shù)據(jù)中...詳情>>

2023-10-15 07:13:07
graph cut和graph cuts有什么區(qū)別?

1.語境不同graph cut”通常在描述一個操作時使用,比如”perform a graph cut”,它指的是在圖中找到一個切割,將圖劃分為兩個...詳情>>

2023-10-15 07:02:16
什么是雙機熱備?

一、雙機熱備的原理雙機熱備是指在系統(tǒng)中配置兩臺服務(wù)器(主服務(wù)器和備份服務(wù)器),兩者通過高速網(wǎng)絡(luò)連接進行實時數(shù)據(jù)同步和狀態(tài)同步。主服務(wù)器...詳情>>

2023-10-15 06:37:02
偏最小二乘支持向量機和支持向量機回歸的區(qū)別是什么?

1.模型構(gòu)建的理論基礎(chǔ)不同支持向量機回歸(SVR)基于統(tǒng)計學習理論,其主要思想是找到一個超平面,使得大部分數(shù)據(jù)點都在這個超平面的一定范圍內(nèi),...詳情>>

2023-10-15 06:30:45
VAE、GAN和transformer有什么區(qū)別?

1.模型結(jié)構(gòu)不同VAE(變分自編碼器)是一種生成模型,其基于概率圖模型和自編碼器,能夠?qū)W習數(shù)據(jù)的潛在分布。GAN(生成對抗網(wǎng)絡(luò))同樣是一種生成...詳情>>

2023-10-15 06:10:12