Java基础篇--Random(随机)类

构造方法 

Java的java.util包中有一个Random类,它可以在指定的取值范围内随机产生数字。Random类中提供了两个构造方法如下表。

方法声明

功能描述

Random()

构造方法,用于创建一个伪随机数生成器

Random(long seed)

构造方法,使用一个long型的seed种子创建伪随机数生成器

示例:

import java.util.Random;
 public class myclass {
	public static void main(String args[]) {
		Random r = new Random(); // 不传入种子
		// 随机产生10个[0,100)之间的整数
		for (int x = 0; x < 10; x++) {
			System.out.println(r.nextInt(100));
		}
	}
 }

当我们运行这个程序两次时,两次产生的随机数序列是不一样的。这是因为当创建Random的实例对象时,没有指定种子,系统会以当前时间戳作为种子,产生随机数。当指定种子后,两次产生的随机数序列就会一样了。

常用的方法

 相对于Math的random()方法而言,Random类提供了更多的方法来生成各种伪随机数,不仅可以生成整数类型的随机数,还可以生成浮点类型的随机数。Random类常用的方法如下表。

下面是一些Random类常用的方法:

方法声明

功能描述

double nextDouble()

随机生成double类型的随机数,

返回的是0.0和1.0之间double类型的值。

float nextFloat()

随机生成float类型的随机数,

返回的是0.0和1.0之间float类型的值。

int nextInt()

随机生成int类型的随机数

int nextInt(int n)

随机生成0~n之间int类型的随机数,

返回的是0(包括)和指定值n(不包括)之间的值。

  1. 生成随机整数:
    Random random = new Random();
    int randomNumber = random.nextInt();  // 生成int范围内的随机整数
    int randomNumberInRange = random.nextInt(100);  // 生成0到99之间的随机整数
    
  2. 生成随机浮点数:
    Random random = new Random();
    double randomDouble = random.nextDouble();  // 生成0.0到1.0之间的随机浮点数
    
  3. 生成随机布尔值:
    Random random = new Random();
    boolean randomBoolean = random.nextBoolean();  // 随机生成一个布尔值,true或false
    
  4. 生成随机字节:
    Random random = new Random();
    byte[] buffer = new byte[10];
    random.nextBytes(buffer);  // 将随机字节填充到指定的字节数组中
    

注意:

Random类生成的是伪随机数,即看似随机但实际上是通过确定性算法计算得到的。如果需要更高质量的随机数,请考虑使用java.security.SecureRandom类。 

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员老李头

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值