Java Math.random()

random() 方法返回一个大于或等于 0.0 且小于 1.0 的随机值。

示例

class Main {
  public static void main(String[] args) {

// generates a random number between 0 to 1 System.out.println(Math.random());
} } // Output: 0.3034966869965544

Math.random() 语法

random() 方法的语法是

Math.random()

注意random() 方法是一个静态方法。因此,我们可以直接使用类名 Math 来调用该方法。


random() 参数

Math.random() 方法不接受任何参数。


random() 返回值

  • 返回一个介于 0.01.0 之间的伪随机值

注意:返回的值并非真正随机。而是通过满足某种随机性条件的确定性计算过程生成的。因此称为伪随机值。


示例 1:Java Math.random()

class Main {
  public static void main(String[] args) {

    // Math.random()
    // first random value
    System.out.println(Math.random());  // 0.45950063688194265

    // second random value
System.out.println(Math.random()); // 0.3388581014886102
// third random value System.out.println(Math.random()); // 0.8002849308960158 } }

在上面的示例中,我们可以看到 random() 方法返回了三个不同的值。


示例 2:生成 10 到 20 之间的随机数

class Main {
  public static void main(String[] args) {

    int upperBound = 20;
    int lowerBound = 10;

    // upperBound 20 will also be included
    int range = (upperBound - lowerBound) + 1;

    System.out.println("Random Numbers between 10 and 20:");

    for (int i = 0; i < 10; i ++) {

      // generate random number
      // (int) convert double value to int
      // Math.random() generate value between 0.0 and 1.0
int random = (int)(Math.random() * range) + lowerBound;
System.out.print(random + ", "); } } }

输出

Random Numbers between 10 and 20:
15, 13, 11, 17, 20, 11, 17, 20, 14, 14,

示例 3:访问随机数组元素

class Main {
  public static void main(String[] args) {

    // create an array
    int[] array = {34, 12, 44, 9, 67, 77, 98, 111};

    int lowerBound = 0;
    int upperBound = array.length;

    // array.length will excluded
    int range = upperBound - lowerBound;

    System.out.println("Random Array Elements:");
    // access 5 random array elements
    for (int i = 0; i <= 5; i ++) {

// get random array index int random = (int)(Math.random() * range) + lowerBound;
System.out.print(array[random] + ", "); } } }

输出

Random Array Elements:
67, 34, 77, 34, 12, 77,

另请阅读

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战