1、Math.random()方法

在Math类中存在一个random()方法,用于产生随机数字。

这个方法默认随机生成一个double类型[0,1)的小数

语法:

double randomValue = Math.random();

(1)生成 [0, N) 之间的随机整数

int N = 100;
int randomInt = (int) (Math.random() * N);
System.out.println("随机整数: " + randomInt);

 (2)生成 [0, N] 之间的随机整数

//通过将上限设为 N+1,可以覆盖到 N。
int N = 100;
int randomInt = (int) (Math.random() * (N+1));
System.out.println("随机整数: " + randomInt);

(3)生成 [min, max) 之间的随机整数

int min = 10;
int max = 20;
int randomInt = (int) (Math.random() * (max - min)) + min;
System.out.println("随机整数: " + randomInt);

(4)生成 [min, max] 之间的随机整数

int min = 10;
int max = 20;
int randomInt = (int) (Math.random() * (max - min + 1)) + min;
System.out.println("随机整数: " + randomInt);

(5)生成 [min, max) 之间的随机浮点数

double min = 1.0;
double max = 2.0;
double randomDouble = Math.random() * (max - min) + min;
System.out.println("随机浮点数: " + randomDouble);

产生一定范围内的随机数,范围包含最小值min与最大值max。

公式:(数据类型)(Math.random()*(max-min+1)) + min

2、Random类

除了Math类中的random()方法可以获取随机数之外,在Java中还提供了一种可以获取随机数的API,那就是java.util.Random类。即通过实例化一个Random对象创建一个随机数生成器。

用法如下:

//导包(导包的动作必须出现在类定义的上边)
import java.util.Random;
//创建对象
Random r=new Random();
//生成随机数
int num=r.nextInt(随机数的范围);

//随机数的范围:从0开始,到这个数-1结束
//即:包头不包尾,包左不包右

//例
int num=r.nextInt(19);//范围0-18

//[n,m)
int num=r.nextInt(m-n+1)+n;

//例 7-15
int num=r.nextInt(9)+7;

公式:

Random r=new Random();

数据类型 变量 = r.next数据类型(max-min+1)+min;

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐