当前位置:首页 > Java技术 > java int随机数

java int随机数

2022年09月16日 16:03:47Java技术6

随机数的产生在一些代码中很常用,也是我们必须要掌握的。而java中产生随机数的方法主要有三种:

第一种:new Random()

第二种:Math.random()

第三种:currentTimeMillis()

第一种需要借助java.util.Random类来产生一个随机数发生器,也是最常用的一种,构造函数有两个,Random()和Random(long seed)。第一个就是以当前时间为默认种子,第二个是以指定的种子值进行。产生之后,借助不同的语句产生不同类型的数。

种子就是产生随机数的第一次使用值,机制是通过一个函数,将这个种子的值转化为随机数空间中的某一个点上,并且产生的随机数均匀的散布在空间中。以后产生的随机数都与前一个随机数有关。以代码为例。

java int随机数 _ JavaClub全栈架构师技术笔记

1 public static void main(String[] args)

2 {

3   Random r = new Random(1);

4   for(int i=0 ; i<5 ; i++)

5   {

6     int ran1 = r.nextInt(100);

7     System.out.println(ran1);

8   }

9 }

java int随机数 _ JavaClub全栈架构师技术笔记

在我的编译器下产生的五个数均为85,88,47,13,54,如果采用Random r = new Random(),产生的随机数就不同,这就是确定种子导致的结果。

而第二种方法返回的数值是[0.0,1.0)的double型数值,由于double类数的精度很高,可以在一定程度下看做随机数,借助(int)来进行类型转换就可以得到整数随机数了,代码如下。

1 public static void main(String[] args)

2 {

3 int max=100,min=1;

4 int ran2 = (int) (Math.random()*(max-min)+min);

5 System.out.println(ran2);

6 }

至于第三种方法虽然不常用,但是也是一种思路。方法返回从1970年1月1日0时0分0秒(这与UNIX系统有关)到现在的一个long型的毫秒数,取模之后即可得到所需范围内的随机数。

java int随机数 _ JavaClub全栈架构师技术笔记

1 public static void main(String[] args)

2 {

3 int max=100,min=1;

4 long randomNum = System.currentTimeMillis();

5 int ran3 = (int) (randomNum%(max-min)+min);

6 System.out.println(ran3);

7

8 }

java int随机数 _ JavaClub全栈架构师技术笔记

//java代码:生成一个从x到y之间的随机数(整数)

import java.util.Random;

/**

* 一、思路:

* 1、生成随机数需要使用到Java工具类中的Random类。

* 2、要求是随机x到y之间的整数,即指定范围,则使用Random类中的nextInt(int n)方法。

* 3、该方法生成从0(包括)到n(不包括)之间的随机整数,是一个伪随机数,并不是真正的随机数。

* 4、若x不为0,则需要在随机结果后加上x。参数n的值也需要加上1后减去x。最后结果才符合要求的范围。

* 二、实现:

* 1、定义x和y的值,修改该值可以随机不同范围的整数。

* 2、调用Random中的nextInt(int n)方法,计算随机数。

* 3、将结果打印到控制台。

* */

public class RandomTest {

public static final int START = 50; //定义范围开始数字

public static final int END = 99; //定义范围结束数字

public static void main(String[] args) {

// TODO Auto-generated method stub

//创建Random类对象

Random random = new Random();

//产生随机数

int number = random.nextInt(END - START + 1) + START;

//打印随机数

System.out.println("产生一个"+START+"到"+END+"之间的随机整数:"+number);

}

}

作者:ffts0721
来源链接:https://blog.csdn.net/weixin_30825953/article/details/114193841

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。


本文链接:https://www.javaclub.cn/java/42065.html

标签: Java随机数
分享给朋友:

“java int随机数” 的相关文章

Java随机数Random

记录一个比较操蛋的问题 1、随机数是由随机种子根据一定的计算方法计算出来的结果。只要计算方法一定,随机种子一定,那么计算出来的结果就相同。 2、如果你每次调用srand()时都提供相同的种子值,那么,你将会得到相同的随机数序列 3、Rand...

利用java随机数模拟求π的值

利用java随机数模拟求π的值

我们从小学的时候就已经熟知了π的值是介于3.1415926到3.1415927之间的一个无限不循环小数,今天我们就来利用java中的Math.random()这个随机数产生器来计算π的值,产生的数值范围为0~1。 用随机数来计算π的值可能...

java生成永远不重复的随机数

java生成不重复随机数的方法 发布时间:2020-07-01 11:00:00 来源:亿速云 阅读:225 作者:Leah java怎么实现生成不重复随机数 ?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多...

java 随机数 【指定范围】

在Java中我们可以使用java.util.Random类来产生一个随机数发生器。它有两种形式的构造函数,分别是Random()和Random(long seed)。Random()使用当前时间即System.currentTimeMillis()作为发生器的种子,Rando...

java随机数012

java随机数012

[java]代码库import java.util.Random; public class RandomNumber{ public static void main(String[] args) { // 使用java.l...

Java生成指定范围的随机数

生成指定范围内的随机数 这个是最常用的技术之一。程序员希望通过随机数的方式来处理众多的业务逻辑,测试过程中也希望通过随机数的方式生成包含大量数字的测试用例。问题往往类似于: 如何随机生成 1~100 之间的随机数,取值包含边界值 1 和 100。 或者是:...

JAVA函数的返回值类型详解以及生成随机数的例题

函数的四要素:函数名、输入、输出(返回)、加工。 函数分为两种:一种是有返回值得函数,一种是没有返回值的函数。 1. 定义:没有返回值的函数:(当我不需要函数的计算结果再拿出来进行运算的时候,我就不需要有返回值,直接在函数中运算完成加工即可) static vo...

java 随机数种子

引子:需要实现每天随机获得一个礼包,且全服玩家随出来的都是同一个。 实现方案:以当前时间是一年的第几天作为random的种子,取1~礼包总个数范围内的随机值。 public static int getBuffId() { Calendar c...

java随机产生long

随机数的生成在一些代码中很常用,更是涉及到了很多行业,比如游戏,彩票等等很多金融相关的行业。Java生成随机数在java开发中也是一个合格的程序员必备的功能实现。 就目前来说,java生成随机数的方法主要有下面几种: 一、new Random()需要借助...

Java Random 随机数

转载请注明来源: http://blog.csdn.net/kjunchen/article/details/52081407 Java Random 随机数 实际开发中产生随机数的使用很常见,因此在程序中产生随机数的操作很...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。