Java 打印出多个随机结果

Java 打印出多个随机结果,java,Java,我正在制作一个随机生物生成器,它运行得非常好,但是当它打印结果时,它会打印相同的结果5次。我尝试了一些不同的方法,比如多次使用println()和执行while循环,但是每次运行该文件时,我都会得到一些相同的结果。“a b c d e”是生成生物的字符串 int x = 1; do { System.out.println(x +" " +a +" " +b +" " +c +" " +d +" " +e); x++; } while (x<=5); intx=1; 做{ 系统输

我正在制作一个随机生物生成器,它运行得非常好,但是当它打印结果时,它会打印相同的结果5次。我尝试了一些不同的方法,比如多次使用println()和执行while循环,但是每次运行该文件时,我都会得到一些相同的结果。“a b c d e”是生成生物的字符串

int x = 1;
do {
  System.out.println(x +" " +a +" " +b +" " +c +" " +d +" " +e);
  x++;
} while (x<=5);
intx=1;
做{
系统输出打印项次(x+“”+a+“”+b+“”+c+“”+d+“”+e);
x++;

}while(x为什么你会得到5次相同的答案,是因为你的do-while循环在不改变“生物”的情况下运行了5次

System.out.println(a +" "+ b + " " + c + " " + d + " " +e);
如果你删除do while循环,你只会得到相同的答案一次,但是为了防止我误解你的问题,我做了一个简单的演示,用for循环、字符串数组和random类获得多个随机结果

 String[] creatures = {"Dog", "Cat", "Fish", "Monkey", "Horse"};
    Random r = new Random();

    for (int i = 0; i < 5; i++) {
        String creature1 = creatures[r.nextInt(creatures.length)];
        String creature2 = creatures[r.nextInt(creatures.length)];
        String creature3 = creatures[r.nextInt(creatures.length)];
        String creature4 = creatures[r.nextInt(creatures.length)];
        String creature5 = creatures[r.nextInt(creatures.length)];

        System.out.println(creature1 + " " + creature2 + " " + creature3
                + " " + creature4 + " " + creature5);

    }
String[]生物={“狗”、“猫”、“鱼”、“猴”、“马”};
随机r=新随机();
对于(int i=0;i<5;i++){
字符串creature1=生物[r.nextInt(biates.length)];
字符串creature2=生物[r.nextInt(biates.length)];
字符串creature3=生物[r.nextInt(biates.length)];
String creature4=生物[r.nextInt(biates.length)];
String creature5=生物[r.nextInt(biates.length)];
System.out.println(creature1+“”+creature2+“”+creature3
+“+creature4+”+creature5);
}

您没有在循环内将值更改为
a
b
c
d
e
。因此我不明白您为什么希望值更改。谢谢,我试图在循环外更改a-e的值。