当前位置: 首页 > 知识库问答 >
问题:

随机5个不同的数字[重复]

琴刚豪
2023-03-14

我有这门课,对我来说很好。它给出了5位随机数。我无法做到的是,这5个数字彼此不同,我的意思是没有重复的5位数字。

import java.util.Random;

public class Test
{

    public int[] dedo()
    {
        Random diceRoller = new Random();
        int[] cifra = new int[5];
        for (int i = 0; i < cifra.length; i++)
        {
            int roll = diceRoller.nextInt(9);
            cifra[i] = roll;
            System.out.print(roll);
        }
        return cifra;
    }
}

共有1个答案

赵志
2023-03-14

如果像这样约束结果,这并不是真正随机的,但是一种快速而糟糕的方法是使用集合。shuffle()

List<Integer> digits = Arrays.asList(0,1,2,3,4,5,6,7,8,9);
Collections.shuffle(digits);
return digits.subList(0, 4).toArray();
 类似资料:
  • 问题内容: 我在这里有一些东西,但是我无法按照自己的喜好工作: 上面的位生成数字,但是它们可以相同。下面的代码可以解决此问题,但不能,但是似乎可以减少这种可能性: 很明显,它只是打印它们。 问题答案: 您可以用来从可迭代对象中获取任意数量的唯一“随机”项-无需使用嵌套循环:

  • 问题内容: 我想创建精确的5个随机字符串,并尽可能减少重复。最好的方法是什么?谢谢。 问题答案: 这将是我最好的猜测-除非您也要寻找特殊字符: 例 而且,对于基于时钟的时钟(由于它是递增的,因此冲突较少): 注意:增量意味着更容易猜测; 如果您将其用作盐或验证令牌,请不要使用。盐(现在)为“ WCWyb”表示从现在起5秒钟为“ WCWyg”)

  • 问题内容: 似乎找不到答案,说我有这个: 我如何使随机数不会重复出现。例如,如果随机数是2,我不希望2再次出现。 问题答案: 您可以通过多种方式实现这一目标。 解决方案A:如果数字范围不大(假设少于10个),则只需跟踪已生成的数字即可。然后,如果生成重复项,则将其丢弃并生成另一个数字。 解决方案B:预先生成随机数,将其存储到数组中,然后遍历数组。您可以通过提取数字然后将其洗牌来实现。 解决方案C:

  • 问题内容: 我对Swift和编程逻辑很陌生,所以请耐心等待 如何在Swift中生成0到9之间的随机数而不重复最后生成的数字?因为相同的数字不会连续出现两次。 问题答案: 将先前生成的数字存储在变量中,然后将生成的数字与先前的数字进行比较。如果它们匹配,则生成一个新的随机数。重复生成新数字,直到它们不匹配为止。

  • 本文向大家介绍随机生成10个不重复的0-100的数字(实例讲解),包括了随机生成10个不重复的0-100的数字(实例讲解)的使用技巧和注意事项,需要的朋友参考一下 在面试时,面试官问了我一道js题:随机生成一个含有10个元素的数组,且元素为0-100的不重复的整数。当时的第一反应是for循环生成10个数字,但是可能会有重复的情况;进一步思考,需要对生成的数字进行验证才能放到数组里面,但是问题来了,

  • 问题内容: 如何选择前5个随机元素 但它需要所有随机元素。我只想要第一个5。 还有另一种方法可以做同样的事情吗? 问题答案: 这是从jQuery选择中获取5个随机元素的方法,无需插件! 此时,您已经从jQuery返回的所有LI中随机选择了5个DomElement 然后,您可以对它们进行任何操作, 例如更改其颜色: 或显示其合并的文本内容: