我如何从数组中获取 4 个随机值 Java

我是 Java 编程新手,现在我想从字符串数组中获取 4 个随机值,我有以下代码,但是如果我运行我的代码,我会得到 4 次相同的随机颜色。


 String [] color = {"red","blue","yellow", "purple", "black"};

       int random = (int) (4*  Math.random());

        String randomColors = (color[random]);

        for (int i = 0; i <4 ; i++) {

            System.out.println(randomColors);

        }

有谁知道我如何解决这个问题。我又是编程新手。


catspeake
浏览 458回答 3
3回答

元芳怎么了

您需要将随机数生成器放入循环中:Random rand = new Random();for (int i = 0; i < 4 ; i++) {&nbsp; &nbsp; int rand_int = rand.nextInt(5); // Generate random integers in range 0 to 4&nbsp; &nbsp; String randomColors = (color[rand_int]);&nbsp; &nbsp; System.out.println(randomColors);}由于您的索引可以达到 4,因此您应该将随机整数值设为 [0, 4],否则永远不会打印最后一种颜色“黑色”

不负相思意

Random generator = new Random();int randomIndex = generator.nextInt(myArray.length);return myArray[randomIndex];多次重复此操作,您需要一个随机值。

杨魅力

问题是您的随机数生成器只能工作一次。您可以通过在已编码的 for 循环中添加代码的第 2 行和第 3 行来解决此问题。祝你好运!
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java