Random介绍
Random类似Scanner,也是Java提供好的API,内部提供了产生随机数的功能
生成指定范围的随机数
使用步骤:
1.导入包
import java.util.Random;
2.创建对象
Random r = new Random();
3.产生随机数
int num = r.nextInt(10);
解释: 10代表的是一个范围,如果括号写10,产生的随机数就是0(包括)-9(包括),括号写20,参数的随机数则是0(包括)-19(包括)
扩展:
关于nextInt(100)方法中具体数字的确定:
13---21 nextInt(8)+13
37~79 包含头不包含尾;nextInt(m-n)+n
37~79 包含头也包含尾;nextInt(m-n+1)+n
总结:n~m之间的数字(包括n,不包括m), nextInt(m-n)+n。
注意:包含数的时候还要加1
//创建随机数对象
Random rm = new Random();
int num = rm.nextInt(最大值-最小值+1) + 最小值;
案例:
程序自动生成一个1-100之间的数字,使用程序实现猜出这个数字是多少?
import java.util.Random;
import java.util.Scanner;
public class RandomDemo2 {
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("请输入你要猜的数字:");
int guessNumber = sc.nextInt();
//比较输入的数字和系统产生的数据,需要使用分支语句。
//这里使用if..else..if..格式,根据不同情况进行猜测结果显示
if(guessNumber > number) {
System.out.println("你猜的数字" + guessNumber + "大了");
} else if(guessNumber < number) {
System.out.println("你猜的数字" + guessNumber + "小了");
} else {
System.out.println("恭喜你猜中了");
break;
}
}
}
}