IDEA-Random随机数Random类⽤来⽣成随机数字
1.导包
import java.util.Random;
2.创建
Random r = new Random();//⼩括号当中留空即可
3.使⽤
获取⼀个随机的int数字(范围是int所有范围,有正负两种) :int num = r.nextInt()
获取⼀个随机的int数字(参数代表了范围,左闭右开区间):int num = r.nextInt(3)
实际上代表的含义是:[0,3),也就是0~2.
public class Demo01Random {
public static void main(String[] args){
Random r =new Random();
java生成随机数的方法int num = r.nextInt(100+1);
System.out.println("随机数"+ num);
}
}
public class Demo02Random {
public static void main(String[] args){
Random r =new Random();
for(int i =0; i <100; i++){
//范围实际上是0~9
int num = r.nextInt(10);
System.out.println(num);
}
}
}
练习题
package demo03;
import java.util.Random;
/*
题⽬要求:
根据int变量n的值,来获取随机数字,范围是[1,n],可以去到1也可以取到n。
思路:
1.定义⼀个int变量n,随意赋值
2.要是⽤Random:三个步骤,导包、创建、使⽤
3.如果写10,那么就是0~9,然⽽想要的是1~10,可以发现:整体+1即可。
*/
public class Demo03Random {
public static void main(String[] args){
Random r =new Random();
for(int i =0; i <100; i++){
int num = r.nextInt(10)+1;
System.out.println(num);
}
}
}
猜数字游戏
没有次数限制使⽤while(true)死循环,添加⼀个break语句,有限次数使⽤for循环。package demo03;
import java.util.Random;
import java.util.Scanner;
/*
题⽬:
⽤代码模拟猜数字的⼩游戏。
思路:
1.⾸先需要产⽣⼀个随机数字,并且⼀旦产⽣不再变化。⽤Random的nextInt⽅法
2.需要键盘输⼊,⽤到Scanner
3.获取键盘输⼊的数字,⽤Scanner当中的nextInt⽅法
4.已经得到了两个数字,判断(if)⼀下
如果太⼤了,提⽰太⼤,并且重试;
如果太⼩了,提⽰太⼩,并且重试;
如果猜中了,游戏结束。
5.重试就是再来⼀次,循环次数不确定,⽤while(true)
*/
public class Demo04RandomGame {
public static void main(String[] args){
//随机的范围
Random r =new Random();
int num1 = r.nextInt(100);
//获取键盘输⼊
Scanner sc =new Scanner(System.in);
while(true){
System.out.println("请输⼊你猜测的数字");
int num2 = sc.nextInt();
if(num2 == num1){
System.out.println("恭喜你,猜对了");
break;//如果猜中,不再重试
}else if(num2 > num1){
System.out.println("太⼤了,重试");
}else if(num2 < num1){
System.out.println("太⼩了,重试");
}
}
System.out.println("游戏结束");
}
}
有限次数使⽤for循环
public static void main(String[] args){
//随机的范围
Random r =new Random();
int num1 = r.nextInt(100);
//获取键盘输⼊
Scanner sc =new Scanner(System.in);
for(int i =0; i <5; i++){
System.out.println("请输⼊你猜测的数字");
int num2 = sc.nextInt();
if(num2 == num1){
System.out.println("恭喜你,猜对了");
break;//如果猜中,不再重试
}else if(num2 > num1){
System.out.println("太⼤了,重试");
}else if(num2 < num1){
System.out.println("太⼩了,重试");
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论