【java】java中Math类的常用方法:

文章目录

        • 一、取绝对值:Math.abs()
        • 二、取整:Math.ceil(),Math.flloor(),Math.round()
            • 1、Math.ceil():向上取整,也就是往较大的数取整
            • 2、Math.floor():向下取整,也就是往较小的数取整
            • 3、Math.round():四舍五入取整
        • 三、开平方:Math.sqrt()
        • 四、取次幂:Math.pow(a,b)
        • 五、π的值:Math.PI
        • 六、取最大值:Math.max(a,b)
        • 七、取最小值:Math.min(a,b)
        • 八、取随机数:Math.random()


一、取绝对值:Math.abs()

其可以用与byte,short,int,long类型都可以,适用范围较广泛。
Math,abs(-1)=1;

特殊:Math.abs(Integer.MIN_VALUE)=-2147483648;
原因:从函数的注释中可以看出其对Integer.MIN_VALUE取绝对值的值已超过int类型的最大值,将会原数据返回。
解决办法:将其转成long类型的数据在取绝对值就行。

二、取整:Math.ceil(),Math.flloor(),Math.round()
1、Math.ceil():向上取整,也就是往较大的数取整

Math.ceil(11.2)=12; Math.ceil(-11.2)=-11;

2、Math.floor():向下取整,也就是往较小的数取整

Math.flloor(11.2)=11; Math.flloor(-11.2)=-12;

3、Math.round():四舍五入取整

这个四舍五入不同于数学中的四舍五入,这里的是相当于先加0.5然后再想下取整而得到的结果。
Math.round(11.2)=11; Math.round(11.5)=12;
Math.round(-11.5)=-11 Math.round(-11.6)=-12;
Math.round(-11.2)=-11;

三、开平方:Math.sqrt()

其可以用与byte,short,int,long类型都可以,但是跟数学中一样其中的值不能为负数。
Math.sqrt(9)=3.0; Math.sqrt(11)=3.3166247903554;

四、取次幂:Math.pow(a,b)

其中a和b可以为byte,short,int,long类型都可以,正负值也都行,其在数学中表示为a^b;
Math.pow(2,3)=8.0;

五、π的值:Math.PI

它的值就是我们数学所使用的Π的值,其数值精确到了小数点后15位。

六、取最大值:Math.max(a,b)

a和b的数据类型可以为byte,short,int,long,如过它们的数据类型不同的话,较小的数据类型就会自动转换成较大的数据类型。
Math.max(2,3)=3; Math.max(4,3.2)=4.0;

七、取最小值:Math.min(a,b)

a和b的数据类型可以为byte,short,int,long,如过它们的数据类型不同的话,较小的数据类型就会自动转换成较大的数据类型。
Math.min(2,3)=2 Math.min(2,3.2)=2.0;

八、取随机数:Math.random()

其随机数的大小为[0.1); 这个函数可以有很多的变化,
**[0,10)**之间的随机数:Math.random()*10
**[0,10]**之间的随机整数:Math.ceil(Math.random()*10);

你可能感兴趣的:(java,java,算法,开发语言)