Java中math類的常用方法
發布于:2019-06-21   作者:admin   瀏覽:151次

  java.lang.Math類擁有基本的數學操作,如指數、對數、平方根和三角函數等等,使用它可以避免程序員自行研發數學方面的代碼。此外,java還有一個java.math包,它提供用于執行任意精度整數(BigInteger)算法和任意精度小數(BigDecimal)算法的類。java培訓機構的小編就來為你介紹一下吧。

Java中math類的常用方法

  Java中的math類

  本文為大家展示Math類的常用方法。Math類屬于包java.lang,因此使用它時無需用import導入。Math類封裝的屬性和方法大致如下:

  publicclassMain{

  publicstaticvoidmain(String[]args){

  //兩個靜態成員變量

  System.out.println("自然對數的底數E是:"+Math.E);//數學中的E(即自然對數的底數)。

  System.out.println("圓周率是:"+Math.PI);//數學中的圓周率。

  //函數羅列于下

  /*

  *1.求絕對值abs()

  */

  System.out.println("絕對值是:"+Math.abs(-5.4));//輸出5.4

  /*

  *2.求最值

  *max(a,b)求最大值

  *min(a,b)求最小值

  */

  System.out.println("最大值是:"+Math.max(1,2));//輸出2

  System.out.println("最小值是:"+Math.min(1.9,-0.2));//輸出-0.2

  /*

  *3.求隨機數random()返回[0.0,1.0)之間的double值。可進一步通過*x控制取值界限,見示例。

  */

  //輸出[0,100)之間的隨機整數

  System.out.println("1~100間的隨機數:"+(int)(Math.random()*100));

  ////////////Exponential:冪、開方、對數等運算

  /*

  *4.冪運算

  *pow(x,y)返回x^y的值

  *exp(x)返回e^x的值

  *expm1(x)返回e^x-1的值

  *所有數據類型都是double型

  */

  System.out.println("2的平方是:"+Math.pow(2.0,2.0));//輸出8.0

  System.out.println("2的立方是:"+Math.pow(2.0,3.0));//輸出8.0

  System.out.println("e的5次方是:"+Math.exp(5));//輸出E^5的值

  System.out.println("e的5次方減1是:"+Math.expm1(5));//輸出E^5-1的值

  /*

  *5.開方運算

  *sqrt(x)開平方,cbrt(x)開立方

  *hypot(x,y):等于sqrt(x*x+y*y)。在求兩點間距離時有用sqrt((x1-x2)^2+(y1-y2)^2)

  */

  System.out.println("4的平方根開2次方:"+Math.sqrt(4.0));//輸出2.0

  System.out.println("8的立方根開3次方:"+Math.cbrt(8.0));//輸出2.0

  System.out.println("平方之和開2次方:"+Math.hypot(3.0,4.0));//輸出5.0

  /*

  *6.對數

  *log(a)a的自然對數(底數是e)

  *log1p(a)a+1的自然對數

  *log10(a)a的底數為10的對數

  *所有數據類型都是double型數據并返回double型數據

  */

  System.out.println("E的自然對數:"+Math.log(Math.E));//輸出1.0

  System.out.println("10的以10為底的自然對數:"+Math.log10(10));//輸出1.0

  System.out.println("加1后的自然對數:"+Math.log1p(Math.E-1.0));//輸出1.0

  /*

  *7.三角函數與反三角函數

  *sin()求正弦,cos()求余弦,tan()求正切:參數都是以弧度表示的角

  *asin()求反正弦,acos()求反余弦,atan()求反正切

  *atan2(y,x)求向量(x,y)與x軸夾角

  */

  System.out.println("30°的正弦值:"+Math.sin(Math.PI/6));

  System.out.println("30°的余弦值:"+Math.cos(Math.PI/6));

  System.out.println("30°的正切值:"+Math.tan(Math.PI/6));

  System.out.println("弧度:"+Math.acos(1.0));//輸出弧度0...

  System.out.println("弧度:"+Math.acos(-1.0));//輸出圓周率3.14...

  System.out.println("夾角:"+Math.atan2(1.0,1.0));//輸出π/4的小數值

  /*

  *8.角度和弧度的轉換

  *toDegrees(a)弧度轉換成角度

  *toRadians(a)角度轉換成弧度

  */

  System.out.println("30°對應的的弧度是:"+Math.toRadians(30));

  System.out.println("45°對應的的弧度是:"+Math.toRadians(45));

  System.out.println("π/6對應的的角度是:"+Math.toDegrees(Math.PI/6));

  System.out.println("π/4對應的的角度是:"+Math.toDegrees(Math.PI/4));

  System.out.println("PI對應的的角度是:"+Math.toDegrees(Math.PI));//輸出180.0

  System.out.println("180度對應的的弧度是:"+Math.toRadians(180));//輸出π的值

  /*

  *9.取整

  */

  //ceil(a):向上取整,返回大于a的第一個整數所對應的浮點數(值是整的,類型是浮點型)

  //可以通過強制轉換將返回值強轉成整型

  System.out.println("向上取整:"+Math.ceil(1.3443));//輸出2.0

  System.out.println("向上取整后再截斷:"+(int)Math.ceil(1.3443));//輸出2

  //floor(a):向下取整,返回小于a的第一個整數所對應的浮點數(值是整的,類型是浮點型)

  System.out.println("向下取整:"+Math.floor(1.3443));//輸出1.0

  //rint(a)返回最接近a的整數的double值。如果有兩個整數同樣接近,就返回偶數的那個

  System.out.println("最接近:"+Math.rint(1.5));//輸出2.0。1與2同樣接近,選擇2

  System.out.println("最接近:"+Math.rint(2.5));//輸出2.0。2與3同樣接近,選擇2

  System.out.println("最接近:"+Math.rint(1.8));//輸出2.0

  //round(a)四舍五入.返回四舍五入后的整數值。

  System.out.println("四舍五入:"+Math.round(1.5));//輸出2

  System.out.println("四舍五入:"+Math.round(2.5));//輸出3

  System.out.println("四舍五入:"+Math.round(1.8));//輸出2

  /*

  *10.其他

  */

  //copySign(x,y)返回用y的符號取代x的符號后新的x值

  System.out.println("符號拷貝:"+Math.copySign(-1.0,2.0));//輸出1.0

  System.out.println("符號拷貝:"+Math.copySign(2.0,-1.0));//輸出-2.0

  //nextAfter(a,b)返回(a,b)或(b,a)間與a相鄰的浮點數b可以比a小。b是控制條件

  System.out.println("與a相鄰的浮點數:"+Math.nextAfter(1.2,2.7));//輸出1.2000000000000002

  System.out.println("與a相鄰的浮點數:"+Math.nextAfter(1.2,-1));//輸出1.1999999999999997

  //nextUp(a)返回比a大一點點的浮點數

  System.out.println("大一點點的浮點數"+Math.nextUp(1.2));//輸出1.2000000000000002

  //nextDown(a)返回比a小一點點的浮點數

  System.out.println("小一點點的浮點數"+Math.nextDown(1.2));//輸出1.1999999999999997

  }

  }


快3彩票