java.util包 您所在的位置:网站首页 java里的函数在哪个包里 java.util包

java.util包

2024-07-11 14:14| 来源: 网络整理| 查看: 265

java.util 包——随机类 (Random)

作者: zccst

 

java.util 包中的内容重点讲解部分:

1.       随机类 (Random)

2.       StringTokenizer 类

3.       集合和映射 (BitSet, Vector, Stack, Hashable)

 

 

随机类 (Random) —— java 产生随机数的几种方式之一

java.lang.Math 中的方法 Random() 与 java.util.Random 的比较:

1 , public static double random() 返回值范围是 [0.0, 1.0) ,且近似均匀分布。第一次调用时,将创建一个新的伪随机数生成器。

new java.util.Random 也创建一个新的伪随机数生成器。且此方法是完全同步的,可允许多个线程使用而不出现错误。

 

2 , java.util.Random 可以产生 int 、 long 、 float 、 double 以及 Goussian 等类型的随机数。这是它与 java.lang.Math 中的方法 Random() 最大的不同之处,后者只产生 double 型的随机数。

 

此外, System 类中有一个 currentTimeMillis() 方法,这个方法返回一个从 1970 年 1 月 1 号 0 点 0 分 0 秒到目前的一个毫秒数,返回类型是 long ,我们可以拿他作为一个随机数,我们可以拿他对一些数取模,就可以把他限制在一个范围之内。

 

java.util.Random 随机数类

1,  随机类 (Random) 的构造方法( 2 个)

public Random()

public Random(longseed)

Java 产生随机数需要有一个基值 seed ,在第一种方法中基值缺省,则将系统时间作为 seed 。

 

2,  随机类 (Random) 常用方法( 6 个)

public int nextInt()                      // 该方法是产生一个 int 型随机数。 [0-n)

public long nextLong()                   // 该方法是产生一个 long 型随机数 .

public float nextFloat()                   // 该方法是产生一个 Float 型随机数。 [0.0f-1.0f)

public double nextDouble()               // 该方法是产生一个 Double 型随机数。 [0.0d-1.0d)

public void nextBytes(byte[] bytes);        // 生成随机数据的字节数组,存放在 byte[]

 

public synonronized void setSeed(longseed)  // 该方法是设定基值 seed 。

public synchronized double nextGoussian()  // 该方法是产生一个 double 型的 Goussian 随机数。

 

例: RandomNumber.java

源码如下:

import java.util.Random;

public class RandomNumber{

         public static void main(String[] args){

                   Random rand1=new Random();

                   byte[] b= new byte[5];

                   rand1.nextBytes(b);

                   for(int i=0;i



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有