目录
Java 中的随机数生成器函数
1. Math.random() 方法
示例
2. java.util.Random类
3. ThreadLocalRandom 类
整数的生成
生成浮点数
结论 – Java 中的随机数生成器
首页 Java java教程 Java 中的随机数生成器

Java 中的随机数生成器

Aug 30, 2024 pm 04:27 PM
java

随机数通常用于创建桌面游戏骰子、赌博程序等应用程序。通常,随机数生成需要花费大量时间。但是,在 Java 编程语言中,可以使用三种方法来实现这一点。它们将在下面的“Java 中的随机数生成器函数”部分中进行讨论。

开始您的免费软件开发课程

网络开发、编程语言、软件测试及其他

Java 中的随机数生成器函数

在 Java 中,可以使用 3 种方式生成随机数:

  • Math.random方法
  • java.util.Random 类
  • ThreadLocalRandom 类

1. Math.random() 方法

Java Math 类提供了多种计算方法,如对数、平均值、指数等。 random() 是其中的方法之一,它返回 0.0 到 1.0 范围内的正双精度值,其中 0.0包含在内,1.0 排除在外。该方法可以使用或不使用参数。如果给定参数,则生成的随机数将在给定参数的范围内。

示例#1

代码:

public class RandomNumber {
double num; //Declare a variable num
//Method which generates a random number
public double randnum()
{
num=Math.random();
return num;
}
// Main Method of a program
public static void main(String[] args) {
//Printing a random number
System.out.println("Random Number generated inside main method: "+Math.random());
//Create an object of the class RandomNumber
RandomNumber randomobj=new RandomNumber();
//Store the return value obtained from randnum method in a variable randomval
double randomval=randomobj.randnum();
//Printing the random number stored in variable randomval
System.out.println("Random Number generated inside randomnumber method: "+randomval);
}
}
登录后复制

输出:

Java 中的随机数生成器

在上面的示例中,使用 Math.random() 方法生成随机数有两种方式:直接在 main 方法中应用它以及使用对象调用包含 Math.random() 的方法。  正如上面的解释中提到的,我们可以看到在 0.0 和 1.0 范围内生成了 2 个随机数。

生成参数范围内的随机数,一般使用的表达式如下:

Math.random()*  ((最大值 – 最小值) +1 ) + 最小值

示例#2

其中 maxvalue 是范围的上限,min value 是范围的下限。例如,为了生成 10 到 20 之间的随机数,请将最大值设置为 20,最小值设置为 10。

代码:

public class RandomNumParameters {
public double randomnum(double x,double y)//max value-y, min value-x
{
double z =(Math.random()*((y-x)+1)+x); //Formula for random number generation within a range
return z;
}
public static void main(String[] args)
{
RandomNumParameters ran=new RandomNumParameters(); //Create instance for the class RandomNumParameters
double num=ran.randomnum(3.0, 10.0); //Call the Method
System.out.println("Random number generated within the range of 3 and 10: "+num );
} }
登录后复制

输出:

Java 中的随机数生成器

2. java.util.Random类

Java.util.random类生成不同数据类型的随机数,例如float、long、integer、double、Boolean等。也可以将数字范围作为参数传递以生成该范围内的随机数。为了使用这个类,必须导入java.util的Random类(java.util.Random)。导入此类后,创建一个实例并使用该实例调用 next long()、nextInt() 等方法。

示例

代码:

//Java program to generate Random numbers using Random class
package Sample;
import java.util.Random; //import Random Class
public class RandomNum {
public static void main(String[] args) {
Random rand=new Random(); //Create instance of Random class
double randomnum=rand.nextDouble(); //Assign the Random Double value in randomnum variable
System.out.println("Random Double value: "+ randomnum);
}
}
登录后复制

输出:

Java 中的随机数生成器

在上面的程序中,使用 nextDouble() 方法生成随机双精度值。

3. ThreadLocalRandom 类

ThreadLocalRandom 类是 Java 版本 1.7 中引入的一种特殊类型的 Random 类。 ThreadLocalRandom.current().nextInt() 是用于生成随机数的常用方法之一。它通常用于多线程应用程序。

示例

代码:

//Java Program to generate random numbers using ThreadLocalRandom Class
import java.util.concurrent.ThreadLocalRandom;
public class RandomNumThread {
public static void main(String[] args) {
//print a random double
System.out.println("Random Double value using ThreadLocalRandom: "+ThreadLocalRandom.current().nextDouble());
}
}
登录后复制

输出:

Java 中的随机数生成器

整数的生成

可以使用 ThreadLocalRandom 类和 Random 类生成随机整数。在这两种情况下,方法 nextInt() 的用途相同:

示例

代码:

//Java program to generate Random integer numbers using Random and THreadLocalRandom Class
import java.util.Random;
import java.util.concurrent.ThreadLocalRandom;
public class RandomInteger {
public static void main(String[] args) {
Random rnd=new Random(); //Create instance of Random class
int randomnum1=rnd.nextInt(); //Random Integer value using Random Class
int randomnum2=rnd.nextInt(30); //Random Integer value within the range of 30
int randomnum3= ThreadLocalRandom.current().nextInt(); //Random Integer value using ThreadLocalRandom Class
System.out.println("Random Integer value using Random Class: "+ randomnum1);
System.out.println("Random Integer value within the range of 30: "+ randomnum2);
System.out.println("Random Integer value using ThreadLocalRandom Class: "+ randomnum3);
}
}
登录后复制

输出:

Java 中的随机数生成器

在上面的示例中,生成了三个随机整数类型数字,其中 nextInt() 方法之一以 30 作为参数。因此,在生成随机数时,上限设置为 30,下限设置为 0(默认下限)。

生成浮点数

与生成整数类似,可以使用 nextFloat() 方法生成浮点数。该方法可以在 Random 类和 ThreadLocalRandom 类中使用:

示例

代码:

//Java program to generate Random Float numbers using Random and THreadLocalRandom Class
import java.util.Random;
import java.util.concurrent.ThreadLocalRandom;
public class RandomFloat {
public static void main(String[] args) {
Random rnd=new Random(); //Create instance of Random class
float randomnum1=rnd.nextFloat(); //Random Float value using Random Class
float randomnum2= ThreadLocalRandom.current().nextFloat(); //Random Float value using ThreadLocalRandom Class
System.out.println("Random float value using Random Class: "+ randomnum1);
System.out.println("Random float value using ThreadLocalRandom Class: "+ randomnum2);
}
}
登录后复制

输出:

Java 中的随机数生成器

结论 – Java 中的随机数生成器

Java 包含大量可在程序中使用的函数。这有助于减少处理时间和代码行数。随机数生成是我们可以使用其中一些函数的一项任务。本文档涵盖了实现此目的的不同方法。

以上是Java 中的随机数生成器的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它们
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Java 中的完美数 Java 中的完美数 Aug 30, 2024 pm 04:28 PM

Java 完美数指南。这里我们讨论定义,如何在 Java 中检查完美数?,示例和代码实现。

Java 中的随机数生成器 Java 中的随机数生成器 Aug 30, 2024 pm 04:27 PM

Java 随机数生成器指南。在这里,我们通过示例讨论 Java 中的函数,并通过示例讨论两个不同的生成器。

Java中的Weka Java中的Weka Aug 30, 2024 pm 04:28 PM

Java 版 Weka 指南。这里我们通过示例讨论简介、如何使用weka java、平台类型和优点。

Java 中的史密斯数 Java 中的史密斯数 Aug 30, 2024 pm 04:28 PM

Java 史密斯数指南。这里我们讨论定义,如何在Java中检查史密斯号?带有代码实现的示例。

Java Spring 面试题 Java Spring 面试题 Aug 30, 2024 pm 04:29 PM

在本文中,我们保留了最常被问到的 Java Spring 面试问题及其详细答案。这样你就可以顺利通过面试。

突破或从Java 8流返回? 突破或从Java 8流返回? Feb 07, 2025 pm 12:09 PM

Java 8引入了Stream API,提供了一种强大且表达力丰富的处理数据集合的方式。然而,使用Stream时,一个常见问题是:如何从forEach操作中中断或返回? 传统循环允许提前中断或返回,但Stream的forEach方法并不直接支持这种方式。本文将解释原因,并探讨在Stream处理系统中实现提前终止的替代方法。 延伸阅读: Java Stream API改进 理解Stream forEach forEach方法是一个终端操作,它对Stream中的每个元素执行一个操作。它的设计意图是处

Java 中的时间戳至今 Java 中的时间戳至今 Aug 30, 2024 pm 04:28 PM

Java 中的时间戳到日期指南。这里我们还结合示例讨论了介绍以及如何在java中将时间戳转换为日期。

Java程序查找胶囊的体积 Java程序查找胶囊的体积 Feb 07, 2025 am 11:37 AM

胶囊是一种三维几何图形,由一个圆柱体和两端各一个半球体组成。胶囊的体积可以通过将圆柱体的体积和两端半球体的体积相加来计算。本教程将讨论如何使用不同的方法在Java中计算给定胶囊的体积。 胶囊体积公式 胶囊体积的公式如下: 胶囊体积 = 圆柱体体积 两个半球体体积 其中, r: 半球体的半径。 h: 圆柱体的高度(不包括半球体)。 例子 1 输入 半径 = 5 单位 高度 = 10 单位 输出 体积 = 1570.8 立方单位 解释 使用公式计算体积: 体积 = π × r2 × h (4

See all articles