概述
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类的对象
Random r = new Random();
//产生10个1到100之间(包含1,包含100)的整数数字
/*
先产生0到99的随机数字(包含0,包含99) --> r.nextInt(100)
+1
结果是1到100的随机数字(包含1,包含100) --> r.nextInt(100) + 1
*/
for (int i = 0; i < 10; i++) {
//产生1个1到100之间(包含1,包含100)的整数数字
int num = r.nextInt(100) + 1;//[0,99]+1
System.out.println(num);
}
}
}
/*
练习:
产生10个66到178之间(包含66,包含178)的整数数字
[66,178] --> [0, 112] + 66 --> [0,113) + 66 --> r.nextInt(113) + 6
*/
public class Demo02 {
public static void main(String[] args) {
//创建Random类的对象
Random r = new Random();
//产生10个66到178之间(包含66,包含178)的整数数字
for (int i = 0; i < 10; i++) {
//产生1个66到178之间(包含66,包含178)的整数数字
int num = r.nextInt(113)+66;
System.out.println(num);
}
System.out.println("-------------");
//证明以上方式,是可以产生最小值66和最大值178的
while (true) {
//产生1个66到178之间(包含66,包含178)的整数数字
int num = r.nextInt(113)+66;
System.out.println(num);
//设定界限值:66和178是两个界限,一旦出了界限,break结束
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) {
//(1)创建产生随机数字的Random类的对象
Random r = new Random();
//(2)产生一个[1,100]之间的随机数字,保存到int变量guessNum中
int guessNum = r.nextInt(100) + 1;
//(3)创建键盘录入Scanner类的对象
Scanner sc = new Scanner(System.in);
//(4)以下步骤(5)-(6)是一个循环过程,因为无法确定用户多少次猜中数字,使用while(true)
while (true) {
//(5)获取用户猜测的通过键盘录入的数字,保存到int变量inputNum中
System.out.println("请输入您猜测的数字(1-100之间的整数):");
int inputNum = sc.nextInt();
//(6)使用if语句的第三种个,对用户猜测的保存在inputNum中的数字 和 产生的保存在guessNum中的数字进行比较
if (inputNum > guessNum) {
//a.如果 inputNum 大于 guessNum 提示"你猜的数据大了"
System.out.println("你猜的数据大了");
} else if (inputNum < guessNum) {
//b.否则,如果 inputNum 小于 guessNum 提示"你猜的数据小了"
System.out.println("你猜的数据小了");
} else {
//c.否则,如果 inputNum 等于 guessNum 提示"恭喜你猜中了",并使用break结束循环
//注意: inputNum 等于 guessNum 条件 省略不写
System.out.println("恭喜你猜中了");
//使用break结束循环
break;
}
}
}
}
最后
以上就是不安黄豆为你收集整理的Java学习笔记-基础day-3-Random随机数api的使用的全部内容,希望文章能够帮你解决Java学习笔记-基础day-3-Random随机数api的使用所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复