Math類:
java.lang.Math類中包含基本的數字操做,如指數、對數、平方根和三角函數。
java.math是一個包,提供用於執行任意精度整數(BigInteger)算法和任意精度小數(BigDecimal)算法的類。java
java.lang.Math類中包含E和PI兩個靜態常量,以及進行科學計算的類(static)方法,能夠直接經過類名調用。git
public static final Double E = 2.7182818284590452354
public static final Double PI = 3.14159265358979323846算法
public static long abs(double x):傳回 x 的絕對值。X也可int long float
public static long sin(double x): 傳回x徑度的正弦函數值
public static long cos(double x):傳回x徑度的餘弦函數值
public static long tan(double x): 傳回x徑度的正切函數值
public static long asin(double x):傳回x值的反正弦函數值。
public static long acos(double x):傳回x值的反餘弦函數值。
public static long atan(double x):傳回x值的反正切函數值。
public static long atan2(double x, double y):傳回極座標(polar)的θ值
public static long floor(double x):傳回不大於x的最大整數值
public static long ceil(double x):傳回不小於x的最小整數值。
public static long exp(double x):傳回至關於ex值
public static long log(double x):傳回x的天然對數函數值
public static long max(double x,double y):傳回x、y較大數
public static long min(double x,double y):傳回x、y較小數
public static long pow(double x,double y):傳回x的y次冪值
public static long sqrt(double x): 傳回x開平方值
public static long rint(double x):傳回最接近x的整數值
public static long round(double x):傳回x的四捨五入值
public static long toDegrees(double angrad):傳回將angrad徑度轉換成角度
public static long toRadians(double angdeg): 傳回將angdeg角度轉換成徑度
public static long random():傳回隨機數值,產生一個0-1之間的隨機數(不包括0和1)dom
NumberFormat類:ide
(public abstract class NumberFormat extends Format)
用java.text.NumberFormat類對輸出的數字結果進行必要的格式化。函數
使用該類以下方法類實例化一個NumberFormat對象:
public static final NumberFormat getInstance()
而後用該對象調用以下方法能夠格式化數字number(返回字符串對象):
public final String format(double number)this
NumberFormat類有以下經常使用方法:
public void setMaximumFractionDigits(int newValue)//設置數的小數部分所容許的最大位數。
public void setMaximumIntegerDigits(int newValue)//設置數的整數部分所容許的最大位數。
public void setMinimumFractionDigits(int newValue)//設置數的小數部分所容許的最小位數。
public void setMinimumIntegerDigits(int newValue)//設置數的整數部分所容許的最小位數。spa
(更多方法及用法看JDK6API參考。)設計
BigInteger類、BigDecimal類:orm
java.math包中的BigInteger類和BigDecimal類分別提供任意精度的整數和小數運算。
兩個類設計思想同樣,這裏只對BigInterger類稍作介紹,細節能夠查看JDK6API參考。
構造方法以下:
BigInteger(String val) //將 BigInteger 的十進制字符串表示形式轉換爲 BigInteger。
還有不少考慮周全的構造函數,建議要準備寫特殊需求的BigInteger前先認真翻下JDK。
經常使用方法:
abs() //返回其值是此BigInteger的絕對值的BigInteger。
add(BigInteger val) //返回其值爲(this+val)的BigInteger。
subtract(BigInteger val) //返回其值爲(this-val)的BigInteger。
multiply(BigInteger val) // 返回其值爲(this*val)的BigInteger。
divide(BigInteger val) //返回其值爲(this/val)的BigInteger。
remainder(BigInteger val) //返回其值爲(this%val)的BigInteger。
compareTo(BigInteger val) //將此BigInteger與指定的BigInteger進行比較。返回值一、0、-1分別表示大於、等於、小於
pow(int exponent) //返回當前大數的exponent次冪。
toString() //返回此BigInteger的十進制字符串表示形式。
toString(int radix) //返回此BigInteger的給定基數(radix進制)的字符串表示形式。
補充:
(1)abs():返回某數字的絕對值.參數能夠是float、double、long或int。若是是byte或short類型,那麼它們會被強制轉換成int類型。(2)ceil()會找到下一個最大整數。例如參數爲9.01時,返回10.0。爲-0.1時,返回-0.0。返回比參數大的整數,並且都是雙精度類型的。若是參數是整數,則該方法會返回這個參數的雙精度型。(3)floor()返回緊鄰的最小整數。做用與ceil()正好相反,返回的是比參數小的整數,並且都是雙精度型。若是參數爲整數,則返回這個參數的雙精度型。(4)max()返回兩個值中的最大值,只支持float double long int 不支持byte short。(5)min()返回兩個值中的最小值,只支持float double long int 不支持byte short。(6)random()返回一個隨機數,一個在0.0到1.0之間的雙精度數。(7)round()返回與某浮點數值最接近的整數值。參數能夠爲double和folat兩種,並且支持四捨五入。例如:參數爲9.01時,返回9,參數爲9.5時,返回10,參數爲-9.5時,返回-9。(8)sqrt()返回某數值的平方根。若是該參數是"非數字"類型(NaN),或者小於零,則返回是NaN。