产生随机数的类---Random

Random

1.1.1 Random的使用步骤

我们想产生1~100(包含1和100)的随机数该怎么办呢? 我们不需要自己去写算法,因为Java已经为我们提供好了产生随机数的类—Random:

作用:

– 用于产生一个随机数

• 使用步骤(和Scanner类似)

– 导包

• import java.util.Random;

– 创建对象

• Random r = new Random();

– 获取随机数

• int number = r.nextInt(10);

• 产生的数据在0到10之间,包括0,不包括10。

• 括号里面的10是可以变化的,如果是100,就是0-100之间的数据



package com.itheima;

import java.util.Random;

 

/*

 * Random:用于产生随机数

 * 

 * 使用步骤:

 *      A:导包

 *          import java.util.Random

 *      B:创建对象

 *          Random r =
new Random();

 *      C:获取随机数

 *          int number
= r.nextInt(10);

 *          获取的是0-10之间的随机数,包括0,不包括10

 * 

 * 需求:如何获取到一个1-100之间的随机数呢?

 */

public class RandomDemo {

    public
static void main(String[] args) {

        // 创建对象

        Random r = new Random();

 

        for
(int x = 0; x < 10;
x++) {

            // 获取随机数

            int
number = r.nextInt(10);

            // 输出随机数

            System.out.println("number:"
+ number);

        }

        System.out.println("--------------------");

 

        // 如何获取到一个1-100之间的随机数呢?

        int i
= r.nextInt(100) + 1;

        System.out.println("i:"
+ i);

    }

}


猜数字小游戏案例:



package com.itheima;

 

import java.util.Random;

import java.util.Scanner;

 

/*

 * 猜数字小游戏案例

 *      系统产生一个1-100之间的随机数,请猜出这个数据是多少。

 * 分析:

 *      A:系统产生一个随机数1-100之间的。

 *          int
number = r.nextInt(100) + 1;

 *      B:键盘录入我们要猜的数据

 *          用Scanner实现

 *      C:比较这两个数据(用if语句)

 *          大了:给出提示大了

 *          小了:给出提示小了

 *          猜中了:给出提示,恭喜你,猜中了

 *      D:多次猜数据,而我们不知道要猜多少次,怎么办呢?

 *          while(true)
{循环的内容}

 */

public class RandomTest {

    public
static void main(String[]
args) {

        // 系统产生一个随机数1-100之间的。

        Random r
= new Random();

        int
number = r.nextInt(100)
+ 1;

 

        while(true){

            // 键盘录入我们要猜的数据

            Scanner sc
= new Scanner(System.in);

            System.out.println("请输入你要猜的数字(1-100):");

            int
guessNumber = sc.nextInt();

    

            // 比较这两个数据(用if语句)

            if
(guessNumber > number) {

                System.out.println("你猜的数据" + guessNumber + "大了");

            } else if (guessNumber < number) {

                System.out.println("你猜的数据" + guessNumber + "小了");

            } else {

                System.out.println("恭喜你,猜中了");

                break;

            }

        }

    }

}

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值