1、 随机数Random
的介绍
1.概念: java.util.Random类就是用来产生随机
数字的,也是一种引用类型
2.随机数Random类的使用步骤
:
(1)导包
格式:
import 包名.类名;
import java.util.Random;
快捷键:
alt + 回车
注意:
a.java.lang包下的东西可以直接使用,不用导包
b.当前类和要使用的类,处于同一个包中,也不用导包
(2)创建对象
类名 对象名 = new 类名(...);
创建Random类的对象:
Random r = new Random();
(3)使用
Scanner中获取键盘录入的整数: int num = sc.nextInt();
Random中产生随机整数数字:
r.nextInt(): 产生一个int范围内(正负21亿)的随机数字
r.nextInt(int类型整数数字n): 产生一个0到n之间的随机数字(包含0,但是不包含n)
其中: 圆括号()中的int类型整数数字n表示产生随机数字的上限范围
思考:
产生20个66到178之间(包含66,包含178)的整数数字
3.2 Random类的使用
练习:
产生10个1到100之间(包含1,包含100)的整数数字
public class Demo01 {
public static void main(String[] args) {
Random r = new Random();
for (int i = 0; i < 10; i++) {
int num = r.nextInt(100) + 1;
System.out.println(num);
}
}
}
public class Demo02 {
public static void main(String[] args) {
Random r = new Random();
for (int i = 0; i < 10; i++) {
int num = r.nextInt(113)+66;
System.out.println(num);
}
System.out.println("-------------");
while (true) {
int num = r.nextInt(113)+66;
System.out.println(num);
if (num == 66 || num == 178) {
break;
}
}
}
}
3.3 Random练习-猜数字
需求分析
1.需求:程序生成一个1-100之间(包含1,包含100)的数字,使用程序实现猜出这个数字是多少?
2.效果:
如果猜的数字比随机产生的数字大,提示你猜的数据大了
如果猜的数字比随机产生的数字小,提示你猜的数据小了
如果猜的数字与随机产生的数字相等,提示恭喜你猜中了
3.使用的知识点:
(1)使用产生随机数字的Random类(1.导包 2.创建对象 3.使用: nextInt(100)+1)
(2)使用键盘录入Scanner类(1.导包 2.创建对象 3.使用: nextInt())
(3)使用if语句的第三种格式,比较用户输入的数字和产生的随机数字的大小关系
(4)无法确定用户猜测的次数,需要使用循环(死循环: while(true))
(5)用户猜测正确后,需要停止循环,使用break
4.实现步骤:
(1)创建产生随机数字的Random类的对象
(2)产生一个[1,100]之间的随机数字,保存到int变量guessNum中,以供用户猜测
(3)创建键盘录入Scanner类的对象
(4)以下步骤(5)-(6)是一个循环过程,因为无法确定猜测的次数,使用while(true)
(5)获取用户猜测的通过键盘录入的数字,保存到int变量inputNum中
(6)使用if语句的第三种个,对用户猜测的保存在inputNum中的数字 和 产生的保存在guessNum中的数字进行比较
a.如果 inputNum 大于 guessNum 提示"你猜的数据大了"
b.否则,如果 inputNum 小于 guessNum 提示"你猜的数据小了"
c.否则,如果 inputNum 等于 guessNum 提示"恭喜你猜中了",并使用break结束循环
实现代码
:
public class GuessNum {
public static void main(String[] args) {
Random r = new Random();
int guessNum = r.nextInt(100) + 1;
Scanner sc = new Scanner(System.in);
while (true) {
System.out.println("请输入您猜测的数字(1-100之间的整数):");
int inputNum = sc.nextInt();
if (inputNum > guessNum) {
System.out.println("你猜的数据大了");
} else if (inputNum < guessNum) {
System.out.println("你猜的数据小了");
} else {
System.out.println("恭喜你猜中了");
break;
}
}
}
}