Java中的數學計算函數

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。

相關文章
相關標籤/搜索