Random 随机数
1 产生随机数
1.1 Random的使用步骤
我们想产生1-100(包含1和100)的随机数该怎么办?我们不需要自己写算法,因为额Java已经为我们提供好了产生随机数的类---Random
作用:用于产生一个随机数
使用步骤(和Scanner类似):
1>导包:import java.util.Random;
2>创建对象:Random r = new Random();
3>获取随机数:int number = r.nextInt(10);
产生的数据在0-10之间,包括0不包括10。
括号里面的10是可以变化的,如果是100,就是0-100之间的数据
不多说了,上代码!
package com.lyc;import java.util.Random;public class RandomDemo {public static void main(String[] args){/*** Random:用于产生随机数* 使用步骤:* A.导包:import java.util.Random;* B.创建对象:Random r = new Random();* C.获取随机数:int number = r.nextInt(10);** 需求: 如何获取一个1-100之间的随机数昵?*///创建对象Random r = new Random();for (int i = 0; i < 10 ; i++){//获取随机数int number = r.nextInt(10);//输出随机数 System.out.println(number);}System.out.println("-----------------------");//如何获取一个1-100之间的随机数昵?int i = r.nextInt(100)+1;System.out.println("i="+i);} }
猜数字小游戏案例:
系统产生一个1-100之间的随机数,请猜出这个数据是多少。
package com.lyc.test;import java.util.Random; import java.util.Scanner;public class RandomNum {public static void main(String[] args) {/*** 系统产生一个1-100之间的随机数明,请猜出这个数据的多少* * A.系统产生一个1-100之间的数据* B.键盘录入我们要猜的数据* C.比较这两个数据的大小(用if语句实现)* 大了:给出提示* 小了:给出提示* 猜中了,给出提示* * D. 多次猜数据,而我们不知道要猜多少次,怎么办?* while(true) {循环内容}* */Random r = new Random();Scanner sc = new Scanner(System.in);int num = r.nextInt(100)+1;while (true) {System.out.println("请输入你要猜的数字(1-100):");int guessNumber = sc.nextInt();//比较这两个数据if (guessNumber > num) {System.out.println("你猜的数据"+guessNumber+"大了");} else if (guessNumber < num) {System.out.println("你猜的数据"+guessNumber+"小了");} else {System.out.println("恭喜你,猜中了!!!");break;}} } }