Java基础学习笔记 - Day07 - 第三章 Random类

Java基础学习笔记 - Day07 - 第三章 Random类

系统:Win10
JDK:1.8.0_121
IDE:IntelliJ IDEA 2017.3.7

3.1 什么是Random类

此类的实例用于生成伪随机数
例如,一下代码使用用户能够得到一个随机数:

Random r = new Random();
int i = r.nextInt();

3.2 Random使用步骤

查看类

  • java.util.Random:该类需要import导入后使用

查看构造方法

  • public Random():创建一个新的随机数生成器

查看成员方法

  • public int nextInt(int n):返回一个伪随机数,范围在0(包括)和指定值n(不包括)之间的int

使用Random类,完成生成3个10以内的随机整数的操作,代码如下

// 1.导包
import java.util.Random;

public class RandomDemo01 {
    public static void main(String[] args) {
        // 2.创建随机数生成器
        Random r = new Random();
        for (int i = 0; i < 3; i++) {
            // 3.随机生成一个数据
            int num = r.nextInt(10);

            // 4.输出数据
            System.out.println(num);
        }
    }
}

备注:创建一个Random对象,每次调用nextInt()方法,都会生成一个随机数

3.3 练习

获取随机整数
获取1-n之间的随机数,包含n,代码如下

// 导包
import java.util.Random;

public class RandomTest01 {
    public static void main(String[] args) {
        int n = 8;
        // 创建随机数生成器
        Random r = new Random();
        // 获取随机数
        int num = r.nextInt(n) + 1;
        // 输出随机数
        System.out.println("num:" + num);
    }
}

猜数字小游戏
游戏开始时,会生成一个1-100之间的整数number,玩家猜测一个数字guessNumber,会与number作比较,系统提示大了或者小了,直到玩家猜中,游戏结束

// 导包
import java.util.Random;
import java.util.Scanner;

public class RandomTest02 {
    public static void main(String[] args) {
        // 自定义一个随机数生成器
        Random r = new Random();
        // 生成目标数字
        int number = r.nextInt(100) + 1;
        // 创建键盘录入数据的对象
        Scanner sc = new Scanner(System.in);
        while (true) {
            // 猜测数据
            int guessNumber = sc.nextInt();
            // 比较
            if (guessNumber > number) {
                System.out.println("您猜的数据" + guessNumber + "大了");
            } else if (guessNumber < number) {
                System.out.println("您猜的数据" + guessNumber + "小了");
            } else {
                System.out.println("恭喜您,猜中啦!");
                break;
            }
        }
    }
}

猜你喜欢

转载自blog.csdn.net/qq_35132089/article/details/108455293