如下代码是生成范围在min到max之间的随机整数(包括min和max):

 

import java.util.Random;

/**
* 生成[min,max]的随机整数
* @author meikai
* @version 2017年11月4日 上午11:04:52
*/
public class RandomTest { public static void main(String args[]) {
int num =new RandomTest().test(5,12);
System.out.println("返回的是"+num); } /**
* 返回[min,max]的随机整数
* @param min
* @param max
* @return
*/
public int test(int min ,int max) { Random r = new Random();
int num =r.nextInt(max+1-min)+min;
return num;
} }

现在讲解  int num =r.nextInt(max+1-min)+min 是怎么生成我们想要范围的随机整数的:

1、Random类的 nextInt()方法生成随机的int值,该值介于int的区间,也就是-2的31次方到2的31次方-1之间;

2、nextInt(int max)方法生成一个随机的int值,该值介于[0,max)的区间, ' [ '符号表示包括,而 ') '表示不包括,所以该方法生成包括0但不包括max的随机整数;

3、nextInt(int max+1)方法生成一个随机的int值,该值介于[0,max]的区间;

4、nextInt(max+1-min)+min,'max+1-min'表示我们要的范围总共有多少个数字,'nextInt(max+1-min)'生成的是这么多个数字中随机的一个,生成后加上min,最终为介于[min,max]数值的随机数。

使用Random随机生成[min,max]之间的整数:的更多相关文章

  1. 要生成在[min,max]之间的随机整数,

    import java.util.Random; public class RandomTest { public static void main(String[] args) { int max= ...

  2. 产生10个随机数5-9之间 统计一个int类型的一维数组中有多少个在[min,max]之间的数

    * 产生10个随机数5-9之间 统计一个int类型的一维数组中有多少个在[min,max]之间的数 */ import java.util.*; public class Demo{ public s ...

  3. java Random随机生成一个数

    package java05; import java.util.Random; /* Random随机生成一个数字 1.导包: import java.util.Random; 2.创建 Rando ...

  4. Math.random()随机生成x~y间的数字

    JS如何随机产生数字呢?这就用到了Math.random()方法,它能够随机产生0~1间的数字,这个数可能为0,但会小于1. 那么,如果我想要大于等于1小于10之间的随机整数呢?需要分为以下几步: 1 ...

  5. random 随机生成字符串

    # import random# for x in range(10):# i = 0# l = []# while i < 10:# ret = chr(random.randint(33, ...

  6. import random随机生成验证码

    #!/usr/bin/env python import random temp = "" for i in range(6): num = random.randrange(0, ...

  7. Java基础__随机生成1~15之间不重复的数字

    package text; import java.util.ArrayList; import java.util.List; public class Text { public static v ...

  8. SQL随机生成数值字符

    1.随机生成0~N之间的数值 ROUND(RAND()*N,0) 2.随机生成Min~Max之间的数值 ROUND(RAND()*(Max-Min),0)+Min 3.随机生成大写字母 CHAR(RO ...

  9. 在一定[min,max]区间,生成n个不重复的随机数的封装函数

    引:生成一个[min,max]区间的一个随机数,随机数生成相关问题参考→链接 var ran=parseInt(Math.random()*(max-min+1)+min); //生成一个[min,m ...

随机推荐

  1. [WinCE] Win CE 屏幕截图

    VS2005自带了这个工具,这个工具的名称为:“远程放大”,其路径为:"C:\Program Files\CE Remote Tools\5.01\bin\cczoom.exe" ...

  2. Oracle GI 日志收集工具 - TFA

    1.TFA的目的: TFA是个11.2版本上推出的用来收集Grid Infrastructure/RAC环境下的诊断日志的工具,它可以用非常简单的命令协助用户收集RAC里的日志,以便进一步进行诊断:T ...

  3. Mysql压缩解决方案

    提到mysql压缩相关的内容,我们能想到的可能是如下几种和压缩相关的场景: 1.客户端和服务器之间传输的数据量太大,需要进行压缩,节约带宽 2.mysql某个列的数据量大,只针对某个列的数据压缩 3. ...

  4. [翻译] AYVibrantButton

    AYVibrantButton https://github.com/a1anyip/AYVibrantButton AYVibrantButton is a stylish button with ...

  5. 设置全局context变量 (显示用户登录名)

    比如在每个页面的最上面部分需要显示用户的登录名称,如果不登录则显示为Guest.这部分内容在每个页面都会出现,所以可将该部分内容作为一个公共模板(如userauth.html),如然后在其他模板中进行 ...

  6. [转]SQL Server 数据库定时自动备份

    前提:在使用下面的备份方式之前需要确保你的Sqlserver Agent服务启动,切设置为自动启动.否则当你服务器重启了但是Agent服务没有启动,那么自动备份任务就不会执行 (一)使用TSql代码自 ...

  7. DevExpress02、RibbonControl

    RibbonControl 常用操作 1.如何代码显示选中的页 ribbonControl1.SelectedPage = ribbonPage2; 2.如何绑定ApplicationMenus和Po ...

  8. Java基础面试题(Hibernate)

    Hibernate是一个什么样的框架? Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hi ...

  9. nginx反向代理跨域基本配置与常见误区

    最近公司前后端分离,前端独立提供页面和静态服务很自然的就想到了用nginx去做静态服务器.同时由于跨域了,就想利用nginx的反向代理去处理一下跨域,但是在解决问题的同时,发现网上有些方案的确是存在一 ...

  10. 2938: [Poi2000]病毒

    Description 二进制病毒审查委员会最近发现了如下的规律:某些确定的二进制串是病毒的代码.如果某段代码中不存在任何一段病毒代码,那么我们就称这段代码是安全的.现在委员会已经找出了所有的病毒代码 ...