说我有3个输出:如何随机化输出
System.out.println("output 1");
System.out.println("output 2");
System.out.println("output 3");
我将如何使它所以只打印输出中的一个,每一次印刷的一个是随机的?
说我有3个输出:如何随机化输出
System.out.println("output 1");
System.out.println("output 2");
System.out.println("output 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
我还没有看到之前产生一个随机数的方法,而且我认为这是错误的。我做了一些研究,现在它非常有意义...谢谢你教我新的东西! – Logan 2013-03-17 10:07:55
将字符串打印在String
数组中,然后生成最大为该数组大小的随机数。在生成的索引处打印String
。
@ String.userName Mike塞缪尔在他的回答中已经表明了这一点。 – 2013-03-16 20:49:45
您可以使用java.util.Random
类生成随机int
,然后只需使用简单的if
语句来打印相应的输出。
// 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
。
最简单的做法是创建一个随机整数并使用switch语句和case来选择每个输出。
这是一个简单的实现:
String[] str = { "Output1", "Output2", "Output3" };
Random r = new Random();
System.out.println(str[r.nextInt(3)]);
看看这些网站,看看如何生成随机数字:http://www.cs.geneseo.edu/~baldwin/reference/random.html ht tp://java.about.com/od/javautil/a/randomnumbers.htm http://docs.oracle.com/javase/6/docs/api/java/util/Random.html – Kevin 2013-03-16 20:50:14