Random类—相关操作
-
随机int数
package cn.xiaoge.day07.demo03; /* 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 */ import java.util.Random; public class Demo01Random { public static void main(String[] args) { Random r = new Random(); for (int i = 0; i < 10; i++) { int num = r.nextInt(); System.out.println("随机数是: " + num); } } } // 运行结果 随机数是: 964985117 随机数是: 85303542 随机数是: -225843696 随机数是: 715348550 随机数是: -1651249208 随机数是: -326973419 随机数是: -600909728 随机数是: -1905362853 随机数是: 1790426291 随机数是: 1454295548 -
范围随机数
package cn.xiaoge.day07.demo03; import java.util.Random; public class Demo02Random { public static void main(String[] args) { Random r = new Random(); for (int i = 0; i < 10; i++) { int num = r.nextInt(10); // 范围实际上是0~9 System.out.println("随机数是: " + num); } } } // 运行结果 随机数是: 6 随机数是: 8 随机数是: 2 随机数是: 0 随机数是: 2 随机数是: 7 随机数是: 9 随机数是: 3 随机数是: 8 随机数是: 2 -
自己指定几到几的随机数
package cn.xiaoge.day07.demo03; /* 题目要求: 根据int变量n的值, 来获取随机睡姿, 范围是[1, n], 可以取到1也可可以去到n. 思路: 1. 定义一个int变量, 随意赋值 2. 要使用Random: 三步骤 导包 创建 使用 3. 如果写10, 那么就是0~9, 然而想要的是1~10, 可以发现: 整体+1即可. 4. 打印随机数字 */ import java.util.Random; public class Demo03Random { public static void main(String[] args) { int n = 10; Random r = new Random(); for (int i = 0; i < 10; i++) { int num = r.nextInt(n) + 1; // 本来范围是[0, n), 整体+1之后变成了[1, n+1), 也就是[1, n] System.out.println("随机数是: " + num); } } } // 运行结果 随机数是: 3 随机数是: 5 随机数是: 10 随机数是: 9 随机数是: 10 随机数是: 2 随机数是: 1 随机数是: 9 随机数是: 9 随机数是: 2 -
猜数字游戏
package cn.xiaoge.day07.demo03; /* 题目: 用代码模拟猜数字游戏 思路: 1. 首先需要产生一个随机数字, 并且一旦产生不在变化. 用Random的nextInt方法 2. 需要键盘输入, 所以用到Scanner 3. 获取键盘输入的数字, 用Scanner当中的nextInt方法 4. 已经得到了两个数字, 判断(if)一下: 如果太大了, 提示太大了, 并且重试: 如果太小了, 提示太小了, 并且重试: 如果猜中了, 游戏结束. 5. 重试就是再来一次, 循环次数不确定, 用while(true). */ import java.util.Random; import java.util.Scanner; public class Demo04RandomGame { public static void main(String[] args) { Random r = new Random(); Scanner sc = new Scanner(System.in); System.out.println("游戏开始"); int rnum = r.nextInt(100) + 1; // [1, 100] while(true){ System.out.print("请输入你猜测的数字: "); int snum = sc.nextInt(); if (snum > rnum) { System.out.println("太大了, 请从新输入"); continue; }else if (snum < rnum) { System.out.println("太小了, 请从新输入"); continue; } else { System.out.println("猜对了, 游戏结束"); break; } } } }
浙公网安备 33010602011771号