大数据必学Java基础(四十九):Math类和Random类的讲解

举报
Lansonli 发表于 2022/09/25 01:02:43 2022/09/25
【摘要】 Math类和Random类的讲解一、Math类【1】直接使用,无需导包【2】final修饰类,这个类不能被继承【3】构造器私有化,不能创建Math类的对象不能【4】Math内部的所有的属性,方法都被static修饰:类名.直接调用,无需创建对象【5】常用方法package com.lanson.test03;/** * @Auther: lanson */public class Test0...

Math类和Random类的讲解

一、Math类

【1】直接使用,无需导包

【2】final修饰类,这个类不能被继承

【3】构造器私有化,不能创建Math类的对象

不能

【4】Math内部的所有的属性,方法都被static修饰:类名.直接调用,无需创建对象

【5】常用方法

package com.lanson.test03;

/**
 * @Auther: lanson
 */
public class Test01 {
    //这是一个main方法,是程序的入口:
    public static void main(String[] args) {
        //常用属性:
        System.out.println(Math.PI);
        //常用方法:
        System.out.println("随机数:"+Math.random());//[0.0,1.0)
        System.out.println("绝对值:"+Math.abs(-80));
        System.out.println("向上取值:"+Math.ceil(9.1));
        System.out.println("向下取值:"+Math.floor(9.9));
        System.out.println("四舍五入:"+Math.round(3.5));
        System.out.println("取大的那个值:"+Math.max(3, 6));
        System.out.println("取小的那个值:"+Math.min(3, 6));
    }
}


【6】静态导入

package com.lanson.test03;
//静态导入:
import static java.lang.Math.*;
/**
 * @Auther: lanson
 */
public class Test01 {
    //这是一个main方法,是程序的入口:
    public static void main(String[] args) {
        //常用属性:
        System.out.println(PI);
        //常用方法:
        System.out.println("随机数:"+random());//[0.0,1.0)
        System.out.println("绝对值:"+abs(-80));
        System.out.println("向上取值:"+ceil(9.1));
        System.out.println("向下取值:"+floor(9.9));
        System.out.println("四舍五入:"+round(3.5));
        System.out.println("取大的那个值:"+max(3, 6));
        System.out.println("取小的那个值:"+min(3, 6));
    }
    //如果跟Math中方法重复了,那么会优先走本类中的方法(就近原则)
    public static int random(){
        return 100;
    }
}


二、Random类

package com.lanson.test03;

import java.util.Random;

/**
 * @Auther: lanson
 */
public class Test02 {
    //这是一个main方法,是程序的入口:
    public static void main(String[] args) {
        //返回带正号的 double 值,该值大于等于 0.0 且小于 1.0。
        System.out.println("随机数:"+Math.random());

        //学习Random类
        //(1)利用带参数的构造器创建对象:
        Random r1 = new Random(System.currentTimeMillis());
        int i = r1.nextInt();
        System.out.println(i);

        //(2)利用空参构造器创建对象:
        Random r2 = new Random();//表面是在调用无参数构造器,实际底层还是调用了带参构造器
        System.out.println(r2.nextInt(10));//在 0(包括)和指定值(不包括)之间均匀分布的 int 值。
        System.out.println(r2.nextDouble());//在 0.0 和 1.0 之间均匀分布的 double 值。
    }
}


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。