java筆記14-數學相關類

math類java

類所在的包數組

java.lang 不須要導包dom

類的關係ide

繼承objectspa

類對象的建立code

全部屬性和方法都是靜態 不須要建立對象orm

類的屬性和方法對象

屬性: PI---圓周率    E---E數繼承

方法:ip

int=Math.abs(int)  絕對值 數字型的基本數據類型都支持long int float double

int=Math.max(int a,int b)   返回最大值  若是傳入數據類型不一致 返回值自動提高到範圍較大的數據類型

int=Math.min()   返回最小值  數字型的基本數據類型都支持long int float double

double=Math.ceil()   ceil()向上取整,即大於這個數的最小的那個整數;

double=Math.floor()  向下取整,即小於這個數的最大的那個整數;

double=Math.rint()  返回最接近該值的那個整數。注意若是存在兩個這樣的整數,則返回其中的偶數

int=Math.round()  返回四捨五入的int類型 (0.5的數取數軸右邊的整數,這樣比較好理解)  round(-1.5) //-1

double=Math.pow(double a ,double b)  a的b次方返回double類型

double=Math.sqrt(double a )  開根號

double=Math.random()    取[0,1)的隨機數 

  這個方法不能知足一些變態的需求 好比取5-10之間的隨機數 double=Math.random()*5+5  5+0.999999999*5=10.9999999995 會有精度的損失

Random類

  類所在的包

    java.util   須要導包  import java.util.Random;

  類的關係

    繼承object

  類對象的建立

    Random r=new Random();

    Random r=new Random(long seed); -->種子數同樣生成的隨機數是同樣的

  類的屬性和方法

    int=r.nextInt();  隨機生成一個int類型的數;默認範圍是int取值範圍,有寫範圍的方法重載int=r.nextInt(10);   0-9的整數

    long=r.nextLong();

    float=r.nextFloat(); 隨機生成一個0-1的小數

    double=r.nextDouble(); 隨機生成一個0-1的小數

    boolean=r.nextBoolean();  隨機生成一個boolean值

    void=r.nextBytes[byte[] bytes]  隨機生成一個byte放入到byte數組中

BigInteger類 

  用於超大數字的計算

  類所在的包

    java.math   須要導包  import java.util.BigInteger;

  類的關係

    繼承Number 

  類對象的建立 構造方法都是帶參數的一般用Sring類型參數

    BigInteger big1=new BigInteger("123232132131232132132312321323");

    BigInteger big2=new BigInteger("123232132131232132132312321323");

  類的方法

    BigInteger=big1.abs() 返回大整數的絕對值

    BigInteger=big1.add(big2) 返回兩個大整數的和

    BigInteger=big1.divide(big2) 返回兩個大整數的商

    BigInteger=big1.subtract(big2) 返回兩個大整數的差

    BigInteger=big1.and(BigInteger val) 返回兩個大整數的按位與的結果

    BigInteger=big1.andNot(BigInteger val) 返回兩個大整數與非的結果

    BigInteger=big1.max(BigInteger val) 返回兩個大整數的最大者

    BigInteger=big1.min(BigInteger val) 返回兩個大整數的最小者

    BigInteger=big1.mod(BigInteger val) 用當前大整數對val求模

    BigInteger=big1.multiply(BigInteger val) 返回兩個大整數的積

    BigInteger=big1.negate() 返回當前大整數的相反數

    BigInteger=big1.pow(int) 返回當前大整數的次方

    BigInteger=big1.remainder(big2) 返回當前大整數除以val的餘數

BigInteger類 

  比double更精確的數

  類所在的包

    java.math   須要導包  import java.util.BigDecimal;

  類的關係

    繼承Number 

  類對象的建立 構造方法都是帶參數的一般用Sring類型參數

    BigInteger big1=new BigInteger("12323213213.1232132132312321323");

    BigInteger big2=new BigInteger("1232321321.31232132132312321323");

  類的方法

    BigInteger=big1.add(big2) 返回兩個大整數的和

    BigInteger=big1.divide(big2) 返回兩個大整數的商

    BigInteger=big1.subtract(big2) 返回兩個大整數的差

    BigInteger=big1.multiply(BigInteger val) 返回兩個大整數的積

    big1=big1.setScale(3,3);  --->處理小數點位數用setScale 第一個參數保留幾位 第二個參數保留的方式 向上取整向下取整 四捨五入等

DecimalFormat類 

    專業的格式化類   

    類所在的包

      java.text 

    類的關係

      繼承NumberFormat

    類對象的建立

      0若是給定數字的位數不夠用0填補、整數多了不處理、小數多了四捨五入

      #若是給定數字的位數不夠不處理、整數多了不處理、小數多了四捨五入

      DecimalFormat decimal =new DecimalFormat("0");  //顯示全部整數

      DecimalFormat decimal =new DecimalFormat("#"); //顯示全部整數

      DecimalFormat decimal =new DecimalFormat("000.000");   12.34 --> 012.340

      DecimalFormat decimal =new DecimalFormat("000.###");   1234.3333 --->  1234.333

      DecimalFormat decimal =new DecimalFormat("000.###%"); //百分比展現  0.3432 ---->  034.32%

      DecimalFormat decimal =new DecimalFormat(",###"); //以逗號隔開  123456789 --->   123,456,789

    類的方法

String value =decimal.format(1222.3335);

相關文章
相關標籤/搜索