天天看點

android Math的使用

今天,簡單講講android裡的Math類的使用。

這個很簡單,隻是昨天設定絕對值時忘記了是哪個函數,是以還是記錄一下。

java.math.Math類常用的常量和方法:

Math.PI 記錄的圓周率

Math.E記錄e的常量

Math.abs 求絕對值

Math.sin 正弦函數 Math.asin 反正弦函數

Math.cos 餘弦函數 Math.acos 反餘弦函數

Math.tan 正切函數 Math.atan 反正切函數 Math.atan2 商的反正切函數

Math.toDegrees 弧度轉化為角度 Math.toRadians 角度轉化為弧度

Math.ceil 得到不小于某數的最大整數

Math.floor 得到不大于某數的最大整數

例如:Math.floor(12.7) =12.0

            Math.ceil(12.7) =13.0

ceil()是天花闆,即向上取整。floor是地闆,向下取整。round是四舍五入。

Math.IEEEremainder 求餘

Math.max 求兩數中最大

Math.min 求兩數中最小

Math.sqrt 求開方

Math.pow 求某數的任意次方, 抛出ArithmeticException處理溢出異常

Math.sqrt(x):平方根

Math.pow(x,y):x的y次方

Math.exp 求e的任意次方

Math.log10 以10為底的對數

Math.log 自然對數

Math.rint 求距離某數最近的整數(可能比某數大,也可能比它小)

Math.round 同上,傳回int型或者long型(上一個函數傳回double型)

Math.random 傳回0,1之間的一個随機數

java.math.BigInteger(大整數):

BigInteger bi1=new BigInteger("1234567890123456890");

BigInteger bi2=BigInteger.valueOf(123L);

bi1=bi1.add(bi2);//b1+b2

bi1=bi1.multiply(bi2);//b1*b2

bi1=bi1.subtract(bi2);//b1-b2

bi1=bi1.divide(bi2);// b1/b2

java.math.BigDecimal(大浮點數):

BigDecimal bd = new BigDecimal("3.1415926");

bd = bd.setScale(2,BigDecimal.ROUND_DOWN);//取3.1415926小數點後面二位

下面舉個例子:

public class MathDemo {  
    public static void main(String args[]){  
        /** 
         * abs求絕對值 
         */  
        System.out.println(Math.abs(-10.4));    //10.4  
        System.out.println(Math.abs(10.1));     //10.1  
          
        /** 
         * ceil天花闆的意思,就是傳回大的值,注意一些特殊值 
         */  
        System.out.println(Math.ceil(-10.1));   //-10.0  
        System.out.println(Math.ceil(10.7));    //11.0  
        System.out.println(Math.ceil(-0.7));    //-0.0  
        System.out.println(Math.ceil(0.0));     //0.0  
        System.out.println(Math.ceil(-0.0));    //-0.0  
          
        /** 
         * floor地闆的意思,就是傳回小的值 
         */  
        System.out.println(Math.floor(-10.1));  //-11.0  
        System.out.println(Math.floor(10.7));   //10.0  
        System.out.println(Math.floor(-0.7));   //-1.0  
        System.out.println(Math.floor(0.0));    //0.0  
        System.out.println(Math.floor(-0.0));   //-0.0  
          
        /** 
         * max 兩個中傳回大的值,min和它相反,就不舉例了 
         */  
        System.out.println(Math.max(-10.1, -10));   //-10.0  
        System.out.println(Math.max(10.7, 10));     //10.7  
        System.out.println(Math.max(0.0, -0.0));    //0.0  
          
        /** 
         * random 取得一個大于或者等于0.0小于不等于1.0的随機數 
         */  
        System.out.println(Math.random());  //0.08417657924317234  
        System.out.println(Math.random());  //0.43527904004403717  
          
        /** 
         * rint 四舍五入,傳回double值 
         * 注意.5的時候會取偶數 
         */  
        System.out.println(Math.rint(10.1));    //10.0  
        System.out.println(Math.rint(10.7));    //11.0  
        System.out.println(Math.rint(11.5));    //12.0  
        System.out.println(Math.rint(10.5));    //10.0  
        System.out.println(Math.rint(10.51));   //11.0  
        System.out.println(Math.rint(-10.5));   //-10.0  
        System.out.println(Math.rint(-11.5));   //-12.0  
        System.out.println(Math.rint(-10.51));  //-11.0  
        System.out.println(Math.rint(-10.6));   //-11.0  
        System.out.println(Math.rint(-10.2));   //-10.0  
          
        /** 
         * round 四舍五入,float時傳回int值,double時傳回long值 
         */  
        System.out.println(Math.round(10.1));   //10  
        System.out.println(Math.round(10.7));   //11  
        System.out.println(Math.round(10.5));   //11  
        System.out.println(Math.round(10.51));  //11  
        System.out.println(Math.round(-10.5));  //-10  
        System.out.println(Math.round(-10.51)); //-11  
        System.out.println(Math.round(-10.6));  //-11  
        System.out.println(Math.round(-10.2));  //-10  
    }  
}  
           

android Math的使用就講完了。

就這麼簡單。