关于java:2个值之间的随机整数

random integers between 2 values

我对Java编程很陌生,我需要在2个值之间生成随机整数。我在Oracle教程中找不到任何相关信息。

因为我是爪哇人,我研究的大部分我都不明白。我看过以下内容:

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

在1和10之间生成一个随机数

http://www.javapractices.com/topic/topication.do?ID=62

如何在Java中的特定范围内生成随机整数?

爪哇中随机数的获取

我尝试过:

1
2
3
4
5
import java.util.Random;

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

结果:

1
java.util.Random@52e922

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

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


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

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

将生成的数字将介于2和5之间。

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

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

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

在这两种情况下,只要您想使用随机类,就需要在程序中包含以下import语句。

1
import java.util.Random;


如果需要两个整数值之间的值(最小值和最大值)干得好:

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

所以最大值是5,最小值是2,如果你想要一个介于2和5之间的整数。


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

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


你需要做一个int或者其他什么来存储它们

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

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