`
shukuiyan
  • 浏览: 413572 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

生成 一定范围内的随机数

阅读更多

要获得一个随机数,有以下几种方法:

(1)       使用java.lang.Math

Double ran=Math.random();  这样就生成了一个0—1范围内的double随机数,要生成其它范围内的随机数,需要对其进行缩放,如生成01000范围内的随机数 的代码如下:

Int myrandom=1000*(Math.random());

生成1001000范围内的随机数如下:

Int myrandom=100+(1000-100)(Math.random());需要注意的是double型数值转换为int时,小数部分被直接去掉,因此得到的随机数的均匀性收到一定影响。

2)使用java.util.Random

这个类提供了丰富的生成随机数的方法。该类通过为其设置随机数发生器的种子来产生随机数序列。如果不给他提供种子,他就用当前时间作为种子。

他的一些方法如下:

nextBoolean:随即产生一个布尔值

nextInt 随即产生一个int

nextLong 随即产生一个Long

nextFloat 随即产生一个Float

nextDouble随即产生一个double

nextBytes 随即产生一个字节填充字节数数组

setSeed()方法设置随即原的种子

例子如下:

/*

       * 下面使用Random类生产随机数

       */

      Random ran=new Random();

      ran.setSeed(125698233);

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

      {

         System.out.println(ran.nextBoolean());

      }

      System.out.println();

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

      {

         System.out.println(ran.nextInt(100));//随即生产一个0100之内的数

      }

      System.out.println();

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

      {

         System.out.println(ran.nextFloat());

      }

      System.out.println();

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

      {

         System.out.println(ran.nextDouble());

      }

      System.out.println();

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

      {

         System.out.println(ran.nextLong());

      }

     

3)使用java.security.SecureRandom

SecureRandom继承了Random类,它能生成密码强度的随机数。该类能产生真正的随机数,而不是伪随机数。可以用长整数值或字节数组设置内部种子。如果不提供种子,SecureRandom实例将调用自行设置种子的方法来生成真正的随机数。

使用如下:

SecureRandom s=new SecureRandom();

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

      {

         System.out.println(s.nextInt(100));

      }

 

分享到:
评论

相关推荐

    动态生成指定范围内的随机数

    对于“动态生成”,这通常意味着用户可以在程序运行时输入参数,如最小值、最大值等,来实时调整随机数的生成范围。这可以通过命令行接口、图形用户界面或网络API实现。例如,一个简单的命令行程序可能包含以下代码...

    java随机数生成器

    可以生成制定范围内的随机数。有GUI界面

    VC获取一定范围内的随机数

    主要介绍了VC的一些基本操作,告诉我们怎么利用VC进行随机数的产生

    在参数范围内生成指定个数随机数

    根据范围以及生成随机数个数 生成不相同的随机数

    生成指定随机数不重复的例子(可用)

    在编程领域,生成指定范围内的随机数而不重复是一项常见的需求,尤其在抽奖系统、密码生成或者数据模拟等场景。这个例子以Java语言为基础,提供了一种解决方案,可以在myEclipse集成开发环境中直接运行。下面我们将...

    asp生成某一范围内的随机数

    ### ASP生成某一范围内的随机数 #### 知识点概览 1. **ASP环境介绍** 2. **随机数在编程中的应用** 3. **ASP中生成随机数的方法** 4. **利用`Randomize`与`Rnd`函数生成随机数** 5. **自定义函数实现特定范围内的...

    VB.NET生成不重复的随机数

    Random类可以生成指定范围内的伪随机数。但直接使用Random类无法保证生成的数字是唯一的,因为它的输出序列是可以重复的。为了解决这个问题,我们需要引入一些额外的策略。 一种常见方法是使用HashSet或Dictionary...

    随机数生成器源码

    4. 区间映射:为了得到指定范围内的随机数,通常需要对生成的原始随机数进行区间映射,例如将[0, 1)区间内的数映射到[a, b)区间。 5. 随机数质量检查:随机数应具有良好的统计性质,如均匀分布、无关联性等,可以...

    vc6.0生成0-99随机数c语言

    根据给定文件的信息,我们...通过上述讨论,我们了解到在C语言中生成随机数的基本方法,包括如何使用`rand()`和`srand()`函数,以及如何生成特定范围内的随机数。理解这些概念对于编写涉及随机性需求的程序至关重要。

    .NET生成不重复的随机数

    这个类提供了`Next()`方法,可以生成指定范围内的整数。但是,`Random`类生成的数是基于时间戳的,如果在短时间内创建多个`Random`实例,可能会得到相同的序列,因为它们的基础种子相同。 为了生成不重复的随机数,...

    VC获取一定范围内的随机数.docx

    在VC(Visual C++)环境下,我们通常使用C标准库提供的`rand()`和`srand()`函数来生成一定范围内的随机数。以下是对这两个函数的详细说明: 1. `rand()`函数: `rand()`函数是C语言的标准库函数,它返回一个0到`...

    js生成1到100的随机数最简单的实现方法

    在JavaScript中生成指定范围内的随机数是编程中常见的需求。本文将介绍如何使用JavaScript中的Math对象以及一些简单的函数来生成1到100之间的随机整数。以下是详细的实现方法: 1. 利用Math.random()生成随机数的...

    Vb 生成小数位的随机数示例程序

    为了生成特定范围内的随机数,我们可以对Rnd函数的结果进行适当的调整。例如,要生成0到9之间(包含0和9)的整数随机数,可以使用`Int(Rnd() * 10)`。 对于带有小数位的随机数,我们可以利用数学运算来控制小数位数...

    VC获取一定范围内的随机数.pdf

    在探讨如何在Visual C++(VC)中获取一定范围内的随机数时,我们首先需要了解C++标准库中的随机数生成器。在C++中,随机数生成器的主要接口是头文件中定义的rand函数和srand函数。rand函数用于生成一个随机数,而...

    随机数生成器

    1. **随机数的概念**:随机数是指在一定范围内无法预测的数,它们的出现看起来没有规律可循。在实际应用中,完全的随机性很难实现,所以通常使用伪随机数生成器(PRNG)。 2. **伪随机数生成器**:伪随机数生成器是...

    matlab专用_matlab_圆内随机数_随机圆matlab_

    在MATLAB中生成圆内随机数是一项常见的任务,特别是在模拟、统计分析或图形绘制等场景。这个主题主要涉及两个核心概念:随机数生成和二维坐标系统中的几何约束。以下是对这些知识点的详细解释: 1. **MATLAB随机数...

    0-100随机数生成器

    这个类提供了一系列方法来生成各种类型的随机数,如整数、浮点数,以及在特定范围内的数值。例如,要生成0-100之间的随机整数,我们可以使用`nextInt(int bound)`方法,传入参数101,因为这个方法生成的是0(包含)...

    随机数生成专家V1.5免费绿色版

    随机数生成专家是一款免费强大的随机数生成器,该软件无需安装,打开即可使用,支持三种随机数生成模式,比如范围模式、列举模式和多维模式,可以生成不同形式的随机数,支持生成指定范围内的几乎所有精度的整数和...

    Delphi生成不重复的随机数Demo

    Delphi中的`Random`函数是生成随机数的基础,它需要一个整数参数(通常是0到MaxInt之间),返回同样范围内的一个随机整数。不过,`Random`函数生成的随机数可能会重复,不适合需要唯一随机数的场景。 2. **随机数...

Global site tag (gtag.js) - Google Analytics