首页 > 编程语言 >Java 实例 - 在控制台上随机得到两个数之间的任意整数值(Random随机数)

Java 实例 - 在控制台上随机得到两个数之间的任意整数值(Random随机数)

时间:2024-04-09 16:47:57浏览次数:29  
标签:11 Java Random 生成 nextInt 随机 随机数

 


 

 

在控制台上随机得到 4~11 之间的任意值, 含4和11

 


1 package com.guyu.demo; 2 3 import java.util.Random; 4 5 /** 6 * 7 * 2024年4月9日 上午10:39:43 8 * @author Guyu 9 * 10 * 随机数示例: 11 * 在控制台上随机得到 4~11 之间的任意值, 含4和11, 12 * 若要生成一个在 a 到 b(包括a和b)之间的随机正整数 (伪随机数),可以使用固定格式: nextInt(b - a + 1) + a 13 * 例如:①生成含 2-8 之间随机数,格式:nextInt(8-2+1)+2; 14 * ②生成含 0-100 之间随机数,格式:nextInt(101); 15 */ 16 public class RandomNumber { 17 18 public static void main(String[] args) { 19 // 创建一个 Random 对象 20 Random random = new Random(); 21 22 // 生成一个 4 到 11 之间的随机整数(包含4和11) 23 // 注:nextInt(8)生成 0 到 7 的随机数 (包含0,不包含8),加 4 后变为 4 到 11,即 nextInt(11-4+1) + 4 24 int randomNumber = random.nextInt(8) + 4;
25 // 生成 5-8 之间随机数(包含5和8):nextInt(8-5+1) + 5 26 // int randomNumber = random.nextInt(4) + 5; 27 28 // 在控制台上打印随机数 29 System.out.println("随机生成的数是: " + randomNumber); 30 } 31 }

 

 

题外衍生:想实现打印不含4和11数值可使用语句格式:nextInt(b - a - 1) + (a + 1);或者do while判断语句,    

package com.guyu.demo; import java.util.Random; /** * * 2024年4月9日 上午10:45:43 * @author Guyu * * 随机数示例: * 在控制台上随机得到 4~11 之间的任意值, 要求不含4和11,
*      当前使用 do while 判断语句举例; * 若要生成一个在 a 到 b(不包含a和b)之间的随机正整数 (伪随机数),也可以使用固定格式: nextInt(b - a - 1) + (a + 1); * */ public class RandomNumber01 { public static void main(String[] args) { // 创建一个 Random 对象 Random random = new Random(); int randomNumber; do { // 生成4到11之间的随机数(包含4和11) randomNumber = random.nextInt(8) + 4; } while (randomNumber == 4 || randomNumber == 11); /** * 通过一个do-while循环来检查生成的随机数是否是4或11, * 如果是,则重新生成; * 当生成的随机数不是4或11时(随机只含:5/6/7/8/9/10),循环终止,并打印出这个随机数。 */ // 在控制台上打印随机数,随机只含范围:5/6/7/8/9/10 System.out.println("随机生成的数是: " + randomNumber); } }

 

 

在控制台上随机得到 5~7 之间的任意值, 四种随机区间范围实例如下:

 

 1 package com.guyu.demo;
 2 
 3 import java.util.Random;
 4 
 5 /**
 6  * 
 7  * 2024年4月9日 上午11:19:43
 8  * @author Guyu
 9  * 
10  * 随机数示例:
11  *         在控制台上随机得到 5~7 之间的任意值, 四种随机区间情况,
12  *         若要生成一个在 a 到 b(包含a和b)之间的随机正整数 (伪随机数),可以使用固定格式: nextInt(b - a + 1) + a
13  *         反之,不包含 a 和 b 之间的随机正整数,需使用固定格式: nextInt(b - a - 1) + (a + 1)
14  *                包含 a 和不包含 b,需使用固定格式: nextInt(b - a) + a
15  *                不包含 a 和包含 b,需使用固定格式: nextInt(b - a) + (a + 1)
16  *        例如:①生成含 5-7 之间随机数(含a和b)
17  *              ②生成 5-7 之间随机数(不含a和b)
18  *              ③生成 5-7 之间随机数(含a但不含b)
19  *              ④生成 5-7 之间随机数(不含a但含b)
20  *            
21  */
22 public class RandomNumber0409 {
23     
24     public static void main(String[] args) {
25         // 创建一个 Random 对象
26         Random random = new Random();
27 
28         // ①生成含 5-7 之间随机数,格式:nextInt(7 - 5 + 1) + 5;   另外若需生成含 0-100 之间随机数,格式:nextInt(101);
29         int randomNumber1 = random.nextInt(3) + 5;
30 
31         // ②生成 5-7 之间随机数(不含a和b),表示(a,b),格式: nextInt(1) + 6,随机结果范围只为:6
32         int randomNumber2 = random.nextInt(1) + 6;
33 
34         // ③生成 5-7 之间随机数(含a但不含b),表示[a,b),格式:nextInt(2) + 5,随机结果范围:5、6
35         int randomNumber3 = random.nextInt(2) + 5;
36 
37         // ④生成 5-7 之间随机数(不含a但含b),表示(a,b],格式:nextInt(2) + 6,随机结果范围:6、7
38         int randomNumber4 = random.nextInt(2) + 6;
39 
40         // 在控制台上打印随机数
41         System.out.println("①随机生成的数是: " + randomNumber1);
42         System.out.println("②随机生成的数是: " + randomNumber2);
43         System.out.println("③随机生成的数是: " + randomNumber3);
44         System.out.println("④随机生成的数是: " + randomNumber4);
45     }
46 }

 

 打印结果随机只有一种情况,会出现四个都为 6

 

 

 

说明: 在使用 Random 类的 nextInt(int bound) 方法,nextInt(int bound) 方法会生成一个介于 0(包括)和 bound(不包括)之间的伪随机整数。默认生成是左闭右开的区间,即[0, bound)。

 

 

故屿γ

 


                      

 

标签:11,Java,Random,生成,nextInt,随机,随机数
From: https://www.cnblogs.com/guyu-/p/18123633

相关文章

  • java-validation(数据校验)
    @PostMapping("/register")@SystemLog(BusinessName="注册用户")//启动AOP实现日志记录publicResponseResultregister(@Validated(ValidateType.INSERT.class)@RequestBodyTsUsertsUser){returntsUserService.register(tsUser);......
  • java-queryWrapper条件
    QueryWrapper1.eq、ne2.gt、ge、lt、le3.between、notBetween4.like、notLike、likeLeft、likeRight5.isNull、isNotNull6.in、notIn7.or、and8.orderByAsc、orderByDesc9.inSql、notInSql(不常用)10.exists、notExists(不常用)11List(不常用)12groupby分组(不常......
  • java-Stream流
    lambda表达式定义:不管是什么对象,lambda表达式主要关注的是对数据进行了什么操作。基本格式(参数列表)->{代码}1.是一个匿名类并且只有一个抽象接口。(笔记)例子:newThread(newRunnable(){@Overridepublicvoidrun(){system。outprintln("新线程中run方法被......
  • 线上服务Java进程假死快速排查、分析
    服务器上的Java进程总是在运行个两三天后就无法响应请求了,具体现象如下:请求业务返回状态码502,查看进程还在,意味着Java进程假死,无法响应请求了;该Java进程占比CPU较高,高达132.8%。使用top命令查看服务器整体运行情况:可以看到PID为14760的Java进程CPU占比132.8%,内存占用37.6%,......
  • 【全开源】JAVA红娘婚恋相亲交友系统源码支持微信小程序+微信公众号+H5+APP
    JAVA红娘婚恋相亲交友系统源码:跨平台交友新纪元,微信小程序、公众号、H5、APP全覆盖在数字化浪潮汹涌的今天,婚恋相亲已不再是传统的线下模式所能满足。JAVA红娘婚恋相亲交友系统源码,以其卓越的跨平台特性和强大的功能优势,为您打造了一个全新的相亲交友体验。无论是微信小程序、......
  • 【全开源】JAVA上门家政服务系统源码微信小程序+微信公众号+APP+H5
    JAVA上门家政服务系统源码:一站式家政服务,微信小程序、公众号、APP、H5全平台覆盖,便捷生活触手可及在现代生活的快节奏中,人们对家政服务的需求日益旺盛。JAVA上门家政服务系统源码,以其高效、便捷的特性,结合微信小程序、公众号、APP和H5平台,为您打造了一站式的家政服务体验,让您......
  • 【全开源】JAVA红娘婚恋相亲交友系统源码支持微信小程序+微信公众号+H5+APP
    JAVA红娘婚恋相亲交友系统源码:跨平台交友新纪元,微信小程序、公众号、H5、APP全覆盖在数字化浪潮汹涌的今天,婚恋相亲已不再是传统的线下模式所能满足。JAVA红娘婚恋相亲交友系统源码,以其卓越的跨平台特性和强大的功能优势,为您打造了一个全新的相亲交友体验。无论是微信小程序、......
  • 【全开源】JAVA上门家政服务系统源码微信小程序+微信公众号+APP+H5
    JAVA上门家政服务系统源码:一站式家政服务,微信小程序、公众号、APP、H5全平台覆盖,便捷生活触手可及在现代生活的快节奏中,人们对家政服务的需求日益旺盛。JAVA上门家政服务系统源码,以其高效、便捷的特性,结合微信小程序、公众号、APP和H5平台,为您打造了一站式的家政服务体验,让您......
  • 【全开源】JAVA红娘婚恋相亲交友系统源码支持微信小程序+微信公众号+H5+APP
    JAVA红娘婚恋相亲交友系统源码:跨平台交友新纪元,微信小程序、公众号、H5、APP全覆盖在数字化浪潮汹涌的今天,婚恋相亲已不再是传统的线下模式所能满足。JAVA红娘婚恋相亲交友系统源码,以其卓越的跨平台特性和强大的功能优势,为您打造了一个全新的相亲交友体验。无论是微信小程序、......
  • 【全开源】JAVA上门家政服务系统源码微信小程序+微信公众号+APP+H5
    JAVA上门家政服务系统源码:一站式家政服务,微信小程序、公众号、APP、H5全平台覆盖,便捷生活触手可及在现代生活的快节奏中,人们对家政服务的需求日益旺盛。JAVA上门家政服务系统源码,以其高效、便捷的特性,结合微信小程序、公众号、APP和H5平台,为您打造了一站式的家政服务体验,让您......