黑马程序员_74_Math类

 ——- android培训java培训、期待与您交流! ———-

Math类

我的印象

Math类是包含基本数学运算的工具类
它所有的方法都是被static修饰的
所以可以使用静态导入,或者直接用类名调用
字段有
E 自然对数的底数
PI 圆周率
常用方法
求最大值最小值
max()
min()
以后求最大值最小值就用这个类的方法求了!

static double ceil(double a)
返回最小的(最接近负无穷大)double 值,该值大于等于参数,并等于某个整数。 x<=ceil(x)
static double floor(double a)
返回最大的(最接近正无穷大)double 值,该值小于等于参数,并等于某个整数。 x>=floor(x)
static long round(double a)
返回最接近参数的 long。 四舍五入
static int round(float a)
返回最接近参数的 int。
static double pow(double a, double b)
返回第一个参数的第二个参数次幂的值。 power幂
static double random()
返回带正号的 double 值,该值大于等于 0.0 且小于 1.0。

java.util
类 Random

import java.util.*;
public class MathDemo
{
    public static void main(String[] args)
    {
        //double d = 1.0121113121;
        //System.out.println(Math.ceil(d));//2.0
        //System.out.println(Math.floor(d));//1.0
        //System.out.println(Math.round(d));//1

        //double a = 2;
        //double b = 3;
        //System.out.println(Math.pow(a,b));//8.0

        //随机数
        //for(int i = 0; i<10; i++)
        //{
            //Random r = new Random();
            //int num = r.nextInt(10);//返回下一个随机数,包含0不包含10
            //System.out.println(num);
        //}

        ////Math类中产随机数的方法
        //for(int i = 0; i<10; i++)
        //{
            //int num = (int)(Math.random()*10);
            //System.out.println(num);
        //}

        //四舍五入保留指定精度
        double num = 123.0215427151;
        System.out.println(saveTwo(num,2));
        System.out.println(saveTwo(num,3));
        System.out.println(saveTwo(num,4));
        System.out.println(saveTwo(num,5));
        System.out.println(saveTwo(num,6));
        System.out.println(saveTwo(num,7));
        //打印结果
        //123.02
        //123.022
        //123.0215
        //123.02154
        //123.021543
        //123.0215427
    }

    //练习。给定一个小数。保留该小数的后两位。
    //思路:把这个数扩大100倍,用round方法四舍五入
    public static double saveTwo(double num,int scale)
    {
        //long l = Math.round(num*100);
        //double d = l/100;
        //return d;
        double base = Math.pow(10,scale); 
        return Math.round(num*base)/base;
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值