java中random的用法详解

java中random的用法详解  java中存在两个随机函数,它们分别来自java.long.Math.random()和  java.util.Random();其中前者的适用范围比较小,完全可以被后者取代。一、java.lang.Math.random()方法的用法   ①、方法类型:      publicstaticdoublerandom();      此方法是一个无参,dou…

大家好,又见面了,我是你们的朋友全栈君。

   java中存在两个随机函数,它们分别来自java.long.Math.random()和    java.util.Random();其中前者的适用范围比较小,完全可以被后者取代。

一、java.lang.Math.random()方法的用法

     ①、方法类型:
          
public static double random();

            此方法是一个无参,double类型返回值的公开静态方法。

       返回一个大于0的double类型数据,该值大于等于0.0且小于1.0,返回的是一个伪随机选择数,在该范围内(几乎)均匀分布。
例如:
public class TestRandom{

	public static void main(String[] args){
		int sum=0;
		while(true){
			float a=(float)Math.random();
			System.out.println(a);
			sum++;
			if(sum==10)
				break;
		}
	}
}

java中random的用法详解
二、
java.util.Random类用法
    ①、该类的构造方法:
         
Random():构造一个无参的随机数生成器。使用系统时间的毫秒作为默认种子。
         
Random(long seed):使用
long数据类型的种子构造一个随机数生成器。
    ②方法摘要:
         
boolean nextBoolean():返回下一个伪随机数,它是取自此随机数生成器序列的均匀分布的
boolean值。
         
double nextDouble():返回下一个伪随机数,它是取自此随机数生成器序列的、在
0.0
1.0 之间均匀分布的
double 值。
         
float nextFloat():返回下一个伪随机数,它是取自此随机数生成器序列的、在
0.0
1.0 之间均匀分布的
float 值。
         
int nextInt():返回下一个伪随机数,它是此随机数生成器的序列中均匀分布的
int 值.
        
int nextInt(int n):返回一个伪随机数,它是取自此随机数生成器序列的、在 0(包括)和指定值n(不包括)之间均匀分布的
int 值。
         
long nextLong():返回下一个伪随机数,它是取自此随机数生成器序列的均匀分布的
long 值。
         
void setSeed(long seed):使用单个
long 种子设置此随机数生成器的种子。
          注意:如果用相同的种子创建两个
Random 实例,则对每个实例进行相同的方法调用序列,它们将生成并返回相同的数字序列。
例如:    
public class TestRandom{

	public static void main(String[] args){
		int sum=0;		
		java.util.Random random=new java.util.Random();
		for(int i=0;i<10;i++){
			int a=random.nextInt(10);
			System.out.print(a+"  ");
		}
		System.out.println("");
		for(int i=0;i<10;i++){
			int a=random.nextInt();
			System.out.println(a);
		}
		System.out.println("");
		for(int i=0;i<10;i++){
			double a=random.nextDouble();
			System.out.println(a);
		}
		System.out.println("");
		for(int i=0;i<10;i++){
			boolean a=random.nextBoolean();
			System.out.println(a);
		}
		System.out.println("");
	}
}
结果为:
java中random的用法详解

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/133010.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • android对文件进行加密

    android对文件进行加密最开始想的是对apk进行加密,但是搜到的资料都是对dex层面的加密,后来转念一想,apk也可以被看做是一个普通的文件,普通的文件其实是可以使用AES进行加密的(AES比DES安全性和速度要更好,属于对称性加密里面很好的了),代码如下funmain(args:Array<String>){ //key也可以采用下边的FileAESUtil.getAutoCreateAESKey()方法自动生成valkey=”asdfghjkl”valcontent=.

  • ARMv9刷屏——号称十年最大变革,Realm机密计算技术有什么亮点?

    ARMv9刷屏——号称十年最大变革,Realm机密计算技术有什么亮点?作者/乾越编辑/芹菜出品/云巅论剑ARMv9的新闻刷屏了。ARMv9号称十年以来最重大变革,因此让我们看下ARMv9中机密计算相关的新特性Realm。(注:本文是对IntroducingtheConfidentialComputeArchitecture的部分翻译和个人注解,本文图均来自anandtech.com网站。)背景在过去的几年里,我们看到安全问题和硬件安全漏洞已经成为了新闻热点。许多处理器侧信道漏洞,如幽灵、熔毁以及与它们有关的侧通道攻击,都表明…

  • linux安装lib包_linux生成静态库

    linux安装lib包_linux生成静态库前几天手里的智能锁项目,收到产品的建议(命令)说,就是人脸识别成功的时候,不要只显示摄像头捕捉到的图像,要弄个酷炫一点的背景,背景里图片中间有个圆圈,人脸就放到圆圈里也就是类似这样。。当然,这是我思考了好几个小时的结果,开始想不明白要怎么实现,其实想通了也很简单,三个步骤A把背景图像的RGB读出来out_bufB把摄像头采集到的图像读出来(分辨率和背…

    2022年10月31日
  • wpf之StackPanel、WrapPanel、WrapPanel之间的关系

    wpf之StackPanel、WrapPanel、WrapPanel之间的关系一、StackPanelStackPanel是以堆叠的方式显示其中的控件1、可以使用Orientation属性更改堆叠的顺序分为水平方向(Orientation=”Horizontal”)和竖直方向(Orientation=”Vertical”),以保证要实现的效果。二、WrapPanel以流的形式由左到右,由上到下显示控件,其功能类似于JavaAWT布局中的FlowLayout…

  • python中数据清洗_dropon

    python中数据清洗_dropon实际应用中,在得到原始数据时,经常碰到数据缺失问题,对数据进行加工或清洗就非常有必要了importnumpyasnpfromnumpyimportnanimportpandasaspddata=pd.DataFrame(np.arange(3,19,1).reshape(4,4),index=list(‘abcd’))print(data)print(data.i…

  • 网学天地考研资料分享_零极区块链怎么赚钱

    网学天地考研资料分享_零极区块链怎么赚钱孤荷凌寒自学第189天区块链103天Dapp058【主要内容】今天继续学习实战,终于完全实现一个波菜类的猜大小的智能合约,并开始准备了解erc721合约标准。共耗时26分钟。(此外整理作笔记花费

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号