Random类的概述和基本使用---Java

Posted 云谷の风

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Random类的概述和基本使用---Java相关的知识,希望对你有一定的参考价值。

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

 1 public class Demo01Random {
 2 
 3     public static void main(String[] args) {
 4         Random r = new Random();
 5 
 6         int num = r.nextInt();
 7         System.out.println("随机数是:" + num);
 8     }
 9 
10 }
 1 import java.util.Random;
 2 
 3 public class Demo02Random {
 4 
 5     public static void main(String[] args) {
 6         Random r = new Random();
 7 
 8         for (int i = 0; i < 100; i++) {
 9             int num = r.nextInt(10); // 范围实际上是0~9
10             System.out.println(num);
11         }
12     }
13 
14 }

 

 1 /*
 2 题目要求:
 3 根据int变量n的值,来获取随机数字,范围是[1,n],可以取到1也可以取到n。
 4 
 5 思路:
 6 1. 定义一个int变量n,随意赋值
 7 2. 要使用Random:三个步骤,导包、创建、使用
 8 3. 如果写10,那么就是0~9,然而想要的是1~10,可以发现:整体+1即可。
 9 4. 打印随机数字
10  */
11 public class Demo03Random {
12 
13     public static void main(String[] args) {
14         int n = 5;
15         Random r = new Random();
16 
17         for (int i = 0; i < 100; i++) {
18             // 本来范围是[0,n),整体+1之后变成了[1,n+1),也就是[1,n]
19             int result = r.nextInt(n) + 1;
20             System.out.println(result);
21         }
22 
23     }
24 
25 }

 

题目:
用代码模拟猜数字的小游戏。

技术图片
 1 import java.util.Random;
 2 import java.util.Scanner;
 3 
 4 /*
 5 题目:
 6 用代码模拟猜数字的小游戏。
 7 
 8 思路:
 9 1. 首先需要产生一个随机数字,并且一旦产生不再变化。用Random的nextInt方法
10 2. 需要键盘输入,所以用到了Scanner
11 3. 获取键盘输入的数字,用Scanner当中的nextInt方法
12 4. 已经得到了两个数字,判断(if)一下:
13     如果太大了,提示太大,并且重试;
14     如果太小了,提示太小,并且重试;
15     如果猜中了,游戏结束。
16 5. 重试就是再来一次,循环次数不确定,用while(true)。
17  */
18 public class Demo04RandomGame {
19 
20     public static void main(String[] args) {
21         Random r = new Random();
22         int randomNum = r.nextInt(100) + 1; // [1,100]
23         Scanner sc = new Scanner(System.in);
24 
25         while (true) {
26             System.out.println("请输入你猜测的数字:");
27             int guessNum = sc.nextInt(); // 键盘输入猜测的数字
28 
29             if (guessNum > randomNum) {
30                 System.out.println("太大了,请重试。");
31             } else if (guessNum < randomNum) {
32                 System.out.println("太小了,请重试。");
33             } else {
34                 System.out.println("恭喜你,猜中啦!");
35                 break; // 如果猜中,不再重试
36             }
37         }
38 
39         System.out.println("游戏结束。");
40     }
41 
42 }
View Code

 

 

以上是关于Random类的概述和基本使用---Java的主要内容,如果未能解决你的问题,请参考以下文章

java基础第六天

java-Random类

是否可以覆盖 Random 类的 Java 实现?

23种基本设计模式-概述

java基础---14. Random

04 JAVA数组