Loading

Java基础之——随机数

概述

在Java中提供了两种生成随机数的方式

  • Math类中的random方法
  • 调用Random类

Math.random()

Math类的random()方法没有参数,它默认会返回[0,1)之间的double随机数

对random()方法返回的数字稍加处理,即可实现产生任意范围随机数的功能

  • (int)(Math.random() * n):返回 [0,n) 的随机数
  • m + (int)(Math.random() * n):返回 [m,m+n) 的随机数
获取一个2—100的数值
int number = 2 + (int)(Math.random() * 98)

使用该方法还可以生成字符

  • (char)(‘a’+ Math.random() * (‘z’-‘a’+1))

Random类

语法:Random r = new Random()

以这种方式实例化对象时,Java编译器将以系统当前时间作为随机数生成器的种子

用户还可以在实例化的时候设置随机数生成器的种子:Random r = new Random(seedvalue)

常用方法

  • int nextInt():返回一个随机整数
  • int nextInt(int n):返回一个 [0, n) 的随机整数
  • long nextLong():返回一个随机长整型数
  • boolean nextBoolean():返回一个随机布尔型值
  • float nextFloar():返回一个随机浮点数
  • double nextDouble()
  • double nextGaussian():返回一个概率密度为高斯分布的双精度值
获取1到10的范围
int num = r.nextInt(10)+1; 

生成[-3,15]区间的整数
int num = r.nextInt(18) - 3;
posted @ 2021-03-27 14:46  qinuna  阅读(107)  评论(0编辑  收藏  举报