深入瞭解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的更多內容!
推薦閱讀:
- 深入瞭解Java核心類庫–Math類
- Java學習筆記:關於Java double類型相加問題
- Java BigDecimal類用法詳解
- java中BigDecimal用法詳解
- Java基礎之數組超詳細知識總結