您的位置:首页 > 移动开发 > Android开发

java,android中Math类用法大全

2016-11-17 15:25 393 查看
我们知道在安卓中有时需要对图片或者特定的算法进行数学运算,那么我们就少不了使用Math类的一些已经封装好的常见数学函数和数学常量

Java.math.Math类常用的常量和方法:

Math.PI
记录的圆周率
Math.E记录e的常量
Math.abs() 求绝对值

Math.sin()
正弦函数 Math.asin() 反正弦函数
Math.cos() 余弦函数 Math.acos() 反余弦函数
Math.tan() 正切函数 Math.atan() 反正切函数

例:30度角的sin,cos,tan的值



double sin = Math.sin(Math.toRadians(30));
double cos = Math.cos(Math.toRadians(30));
double tan = Math.tan(Math.toRadians(30));
sin: 0.49999999999999994
cos: 0.8660254037844387
tan: 0.5773502691896257

注意:Math.sin(double d);参数d为弧度值,需要将度数转换成弧度值

double v = Math.sqrt(2)/2;
double asin = Math.asin(v);
double acos = Math.acos(v);
double atan = Math.atan(v);
double asinDeg = Math.toDegrees(asin);
double acosDeg = Math.toDegrees(acos);
double atanDeg = Math.toDegrees(atan);

asinDeg: 45.00000000000001
acosDeg: 45.0
atanDeg: 35.264389682754654

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小数点后面二位
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: