【问题标题】:random integers between 2 values2个值之间的随机整数
【发布时间】:2015-01-22 21:28:12
【问题描述】:

我是 Java 编程新手,我需要在 2 个值之间生成随机整数。我在 oracle 教程中找不到任何相关信息。

因为我是 Java 新手,所以我研究的大部分内容我都不懂。 我看过以下内容:

http://docs.oracle.com/javase/7/docs/api/java/util/Random.html

Generating a Random Number between 1 and 10 Java

http://www.javapractices.com/topic/TopicAction.do?Id=62

How do I generate random integers within a specific range in Java?

Getting random numbers in Java

我试过了:

import java.util.Random;

public static void main(String[] args) {
    Random randint = new Random();
    System.out.println(randint);

结果:

java.util.Random@52e922

它似乎正在打印randint 的类型。

那么,我如何在 2 个值之间创建一个随机整数,然后将结果打印到屏幕上?

【问题讨论】:

标签: java random


【解决方案1】:

如果你想要一个介于两个整数值(最小值和最大值)之间的值 给你:

Random r = new Random();
int randInt = r.nextInt(max-min) + min;
System.out.println(randInt);

如果你想要一个介于 2 和 5 之间的整数,那么 max 会是 5,min 会是 2

【讨论】:

    【解决方案2】:

    你可以像这样指定随机数的范围:

    Random random = new Random();
    int min = 2;
    int max = 5;
    int x = random.nextInt((max-min)+1) + min;
    

    将生成的数字将在 2 到 5 之间。

    如果您不需要指定任何范围,那么您可以这样做:

    Random random = new Random();
    int x = random.nextInt(11);
    

    请注意,此示例中的随机数将介于 0 和 10 之间。

    在任何一种情况下,只要您想使用 Random 类,您就需要在程序中包含以下 import 语句。

    import java.util.Random;
    

    【讨论】:

      【解决方案3】:

      您需要创建一个 int 或其他东西来存储它们

      Random randint = new Random();
      int a = randint.nextInt(2)+1;
      System.out.print(a);
      

      但请注意,我使用 +1,因为 java 总是从 0 开始计数。所以这将产生 1 或 2。

      【讨论】:

        【解决方案4】:

        您正在打印Random 对象。您需要使用对象的函数来获取随机整数:

        Random random = new Random();
        int i = random.nextInt(2);
        System.out.println("Random value: " + i);
        

        【讨论】:

        • 这行得通,但只能从 0 到 2。我如何从 2 到 5 或类似的东西做到这一点?
        • 您知道,这写在您在答案中链接到的问题的答案中:random.nextInt(max - min + 1) + min。在这里亲自查看:stackoverflow.com/a/20389923/725418
        【解决方案5】:

        它对我有用,可能的结果包括最大值但不包括最小值。

        int random = (int)(Math.random() * (max - min) + 1) + min
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2021-10-31
          • 2016-07-05
          • 2018-09-18
          • 1970-01-01
          • 2012-07-10
          • 2012-04-25
          • 2018-01-25
          • 2015-11-07
          相关资源
          最近更新 更多