深入瞭解Java核心類庫–BigDecimal和System類

BigDecimal 類

一、 概述

  • Java在java.math包中提供的API類BigDecimal,用來對超過16位有效位的數進行精確的運算。
  • 開發中,如果我們需要精確計算的結果,則必須使用BigDecimal類來操作。
  • BigDecimal所創建的是對象,故我們不能使用傳統的+、-、*、/等算術運算符直接對其對象進行數學運算,而必須調用其相對應的方法。方法中的參數也必須是BigDecimal的對象。構造器是類的特殊方法,專門用來創建對象,特別是帶有參數的對象。

常用字段

FieldsModifier and Type Field Description
static BigDecimal ONE 值1,標度為0
static BigDecimal TEN 值10,標度為0
static BigDecimal ZERO 值0,標度為0

常用構造方法

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對象中的值相加,返回這個對象
BigDecimal subtract​(BigDecimal subtrahend) 對象中的值相減,返回這個對象
BigDecimal multiply​(BigDecimal) BigDecimal對象中的值相乘,返回這個對象
BigDecimal divide​(BigDecimal) BigDecimal對象中的值相除,返回這個對象
double doubleValue() 將 BigDecimal轉換為 double
float floatValue() 將 BigDecimal轉換為 float
int intValue() 將 BigDecimal成 int
long longValue() 將 BigDecimal轉換為 long
String toString() 將BigDecimal對象的數值轉換成字符串
BigDecimal abs() 返回絕對值
int compareTo​(BigDecimal) 比較大小,小返回-1
BigDecimal max​(BigDecimal) 返回較大的值
BigDecimal min​(BigDecimal) 返回較小的值
BigDecimal movePointLeft​(int n) 返回小數點向左移動n位的值
BigDecimal movePointRight​(int n) 返回小數點向右移動n位的值
BigDecimal multiply​(BigDecimal multiplicand) 返回這個值的相反數
BigDecimal pow​(int n) 返回this^n
BigDecimal setScale​(int n) 確定小數點後的位數n
static BigDecimal valueOf​(long/double) 值轉換為 BigDecimal

System類

三個成員變量

system中包含瞭三個成員變量:

in
標準輸入流(鍵盤輸入)out
標準輸出流(顯示器)err
標準錯誤輸出流(顯示器)

Modifier and Type Field Description
static InputStream in “標準”輸入流(鍵盤輸入)
static PrintStream out “標準”輸出流(顯示器)
static PrintStream err “標準”錯誤輸出流(顯示器)

arraycopy​(Object src, int srcPos, Object dest, int destPos, int length)

將指定源數組中的數組從指定位置開始復制到目標數組的指定位置

Object src:源數組

int srcPos:開始位置

Object dest:目標數組

int destPos:目標數組起始位置

int length:傳的長度

System.currentTimeMillis();

返回毫秒數

gc()

運行垃圾收集器

exit(int status)

  • 終止當前正在運行的java虛擬機。

int status是狀態碼。根據慣例,非0的狀態碼表示異常終止,0表是終止,並且該方法永遠不會正常返回。

  • exit是唯一能夠退出程序並不執行finally的情況。

退出虛擬機會直接終止整個程序,這時的程序已經不是從代碼的層面來終止程序,所以finally不會被執行。

總結

本篇文章就到這裡瞭,希望能給你帶來幫助,也希望您能夠多多關註WalkonNet的更多內容!

推薦閱讀: