深入了解Java核心類庫(kù)--BigDecimal和System類
BigDecimal 類
一、 概述
- Java在java.math包中提供的API類BigDecimal,用來對(duì)超過16位有效位的數(shù)進(jìn)行精確的運(yùn)算。
- 開發(fā)中,如果我們需要精確計(jì)算的結(jié)果,則必須使用BigDecimal類來操作。
- BigDecimal所創(chuàng)建的是對(duì)象,故我們不能使用傳統(tǒng)的+、-、*、/等算術(shù)運(yùn)算符直接對(duì)其對(duì)象進(jìn)行數(shù)學(xué)運(yùn)算,而必須調(diào)用其相對(duì)應(yīng)的方法。方法中的參數(shù)也必須是BigDecimal的對(duì)象。構(gòu)造器是類的特殊方法,專門用來創(chuàng)建對(duì)象,特別是帶有參數(shù)的對(duì)象。
常用字段
FieldsModifier and Type | Field | Description |
---|---|---|
static BigDecimal | ONE | 值1,標(biāo)度為0 |
static BigDecimal | TEN | 值10,標(biāo)度為0 |
static BigDecimal | ZERO | 值0,標(biāo)度為0 |
常用構(gòu)造方法
Constructor | Description |
---|---|
常用 | |
BigDecimal(int) | int→BigDecimal |
BigDecimal(long) | long→BigDecimal |
少用 | |
BigDecimal(double) | double → BigDecimal |
BigDecimal(String) | BigDecimal的字符串→ BigDecimal |
常用方法
Modifier and Type | Method | Description |
---|---|---|
BigDecimal | add(BigDecimal) | BigDecimal對(duì)象中的值相加,返回這個(gè)對(duì)象 |
BigDecimal | subtract(BigDecimal subtrahend) 對(duì)象中的值相減,返回這個(gè)對(duì)象 | |
BigDecimal | multiply(BigDecimal) | BigDecimal對(duì)象中的值相乘,返回這個(gè)對(duì)象 |
BigDecimal | divide(BigDecimal) | BigDecimal對(duì)象中的值相除,返回這個(gè)對(duì)象 |
double | doubleValue() | 將 BigDecimal轉(zhuǎn)換為 double |
float | floatValue() | 將 BigDecimal轉(zhuǎn)換為 float |
int | intValue() | 將 BigDecimal成 int |
long | longValue() | 將 BigDecimal轉(zhuǎn)換為 long |
String | toString() | 將BigDecimal對(duì)象的數(shù)值轉(zhuǎn)換成字符串 |
BigDecimal | abs() | 返回絕對(duì)值 |
int | compareTo(BigDecimal) | 比較大小,小返回-1 |
BigDecimal | max(BigDecimal) | 返回較大的值 |
BigDecimal | min(BigDecimal) | 返回較小的值 |
BigDecimal | movePointLeft(int n) | 返回小數(shù)點(diǎn)向左移動(dòng)n位的值 |
BigDecimal | movePointRight(int n) | 返回小數(shù)點(diǎn)向右移動(dòng)n位的值 |
BigDecimal | multiply(BigDecimal multiplicand) | 返回這個(gè)值的相反數(shù) |
BigDecimal | pow(int n) | 返回this^n |
BigDecimal | setScale(int n) | 確定小數(shù)點(diǎn)后的位數(shù)n |
static BigDecimal | valueOf(long/double) | 值轉(zhuǎn)換為 BigDecimal |
System類
三個(gè)成員變量
system中包含了三個(gè)成員變量:
in
標(biāo)準(zhǔn)輸入流(鍵盤輸入)out
標(biāo)準(zhǔn)輸出流(顯示器)err
標(biāo)準(zhǔn)錯(cuò)誤輸出流(顯示器)
Modifier and Type | Field | Description |
---|---|---|
static InputStream | in | “標(biāo)準(zhǔn)”輸入流(鍵盤輸入) |
static PrintStream | out | “標(biāo)準(zhǔn)”輸出流(顯示器) |
static PrintStream | err | “標(biāo)準(zhǔn)”錯(cuò)誤輸出流(顯示器) |
arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
將指定源數(shù)組中的數(shù)組從指定位置開始復(fù)制到目標(biāo)數(shù)組的指定位置
Object src
:源數(shù)組
int srcPos
:開始位置
Object dest
:目標(biāo)數(shù)組
int destPos
:目標(biāo)數(shù)組起始位置
int length
:傳的長(zhǎng)度
System.currentTimeMillis();
返回毫秒數(shù)
gc()
運(yùn)行垃圾收集器
exit(int status)
- 終止當(dāng)前正在運(yùn)行的java虛擬機(jī)。
int status是狀態(tài)碼。根據(jù)慣例,非0的狀態(tài)碼表示異常終止,0表是終止,并且該方法永遠(yuǎn)不會(huì)正常返回。
- exit是唯一能夠退出程序并不執(zhí)行finally的情況。
退出虛擬機(jī)會(huì)直接終止整個(gè)程序,這時(shí)的程序已經(jīng)不是從代碼的層面來終止程序,所以finally不會(huì)被執(zhí)行。
總結(jié)
本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
說說字符串轉(zhuǎn) OffSetDateTime 你真的會(huì)用嗎
這篇文章主要介紹了字符串轉(zhuǎn) OffSetDateTime 你真的會(huì)用嗎?具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08Java util.List如何實(shí)現(xiàn)列表分段處理
這篇文章主要介紹了Java util.List如何實(shí)現(xiàn)列表分段處理,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09Java網(wǎng)絡(luò)編程基礎(chǔ)篇之單向通信
這篇文章主要介紹了Java網(wǎng)絡(luò)編程里通過套接字實(shí)現(xiàn)單向通信的方法及相關(guān)實(shí)例,屬于網(wǎng)絡(luò)編程入門程序,雖然簡(jiǎn)單,但具有一定參考價(jià)值,需要的朋友可以參考下。2017-09-09Java代碼為例講解堆的性質(zhì)和基本操作以及排序方法
堆數(shù)據(jù)結(jié)構(gòu)可以看作一顆完全二叉樹,因而又被成為二叉堆,這里我們以Java代碼為例講解堆的性質(zhì)和基本操作以及排序方法,需要的朋友可以參考下2016-06-06Spring-Cloud Eureka注冊(cè)中心實(shí)現(xiàn)高可用搭建
這篇文章主要介紹了Spring-Cloud Eureka注冊(cè)中心實(shí)現(xiàn)高可用搭建,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-04-04Mybatis-plus通用查詢方法封裝的實(shí)現(xiàn)
本文主要介紹了Mybatis-plus通用查詢方法封裝的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07SpringAOP事務(wù)配置語法及實(shí)現(xiàn)過程詳解
這篇文章主要介紹了SpringAOP事務(wù)配置語法及實(shí)現(xiàn)過程詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06