如何随机输出

时间:2013-03-16 20:46:01

标签: java random arraylist output println

说我有3个输出:

System.out.println("output 1");
System.out.println("output 2");
System.out.println("output 3");

我怎样才能这样做,所以只打印了一个输出,而且每次打印的输出都是随机的?

6 个答案:

答案 0 :(得分:5)

// Collect all the possible outputs.
String[] outputs = new String[] { "output 1", "output 2", "output 3" };
// Use the core library class java.util.Random to get a source of pseudo-randomness.
Random random = new Random();
// Pick one and print it.
System.out.println(outputs[random.nextInt(outputs.length)]);

nextInt返回一个均匀分布在0和其参数-1之间的伪随机数。

由于Random是伪随机的,如果您需要输出即使是观察了许多随机选择的人也无法使用,请改用SecureRandom

答案 1 :(得分:3)

您可以使用Math.random()完成此操作。

首先,生成0到3之间的随机数:

int randomNum = (int)Math.random() * 3;

接下来,使用if-else语句选择要打印的语句:

if(randomNum == 0)
   //print case 1
else if(randomNum == 1)
   //print case 2
else //print case 3

答案 2 :(得分:2)

将字符串放在String数组中打印,然后生成最大为此数组大小的随机数。在生成的索引处打印String

答案 3 :(得分:2)

您可以使用java.util.Random类生成随机int,然后使用简单的if语句打印相应的输出。

答案 4 :(得分:1)

最概念上最简单的方法是创建一个随机整数,并使用switch语句和case来选择每个输出。

答案 5 :(得分:1)

这是一个简单的实现:

String[] str = { "Output1", "Output2", "Output3" };
Random r = new Random();
System.out.println(str[r.nextInt(3)]);