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

如何获得从1到10的10个数字的随机列表,而不重复列表中的成员[重复]

高山
2023-03-14

我试图写一个方法,得到一个从1到10的数字列表,其中不会有重复的数字。此外,成员不能为零。然而,在多次尝试后,我未能解决问题,以下是我的代码:

public ArrayList<Integer> dobijNiz() {
        int min = 1;
        int max = 10;
        ArrayList<Integer> lista = new ArrayList<Integer>();
        Random random = new Random();

        for (int i = 0; i < 11; i++) {
            int broj = random.nextInt((max - min) + 1) + min;

            lista.add(broj);   
        }
        System.out.println(lista);
        return lista;
    }

输出:

[2, 3, 3, 3, 4, 6, 10, 8, 2, 7, 9]

我忘了说Collections.shuffle不管用

共有1个答案

宗安宁
2023-03-14

将所有可能的数字添加到ArrayList中,然后使用集合。shuffle来洗牌列表。

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

  • 问题内容: 我尝试使用,但一些数字相同。有没有一种方法/模块来创建唯一的随机数列表? 问题答案: 这将返回从0到99范围内选择的10个数字的列表,没有重复。 参考你的特定代码示例,你可能希望一次从文件中读取所有行,然后从内存中的已保存列表中选择随机行。例如: 这样,你只需要在循环之前实际从文件中读取一次即可。与返回文件开头并为每次循环迭代再次调用相比,执行此操作效率更高。

  • 问题内容: 我想要一个可以生成值的伪随机序列的函数,但是该序列在每次运行时都可以重复。我想要的数据必须合理地随机分布在给定的范围内,而不必是完美的。 我想根据随机数据编写一些可以对其进行性能测试的代码。我希望每台机器上的每个测试运行的数据都相同,但是出于存储原因,我不想随测试一起运送随机数据(最终可能会变成许多兆字节)。 该模块的库似乎没有说相同的种子在任何机器上总是给出相同的序列。 编辑:如果您

  • 假设我有员工数据列表。 使用上面的empList,如何获得两个不同的列表,如年龄

  • 本文向大家介绍javascript随机抽取0-100之间不重复的10个数,包括了javascript随机抽取0-100之间不重复的10个数的使用技巧和注意事项,需要的朋友参考一下 目前只学会两种简单的方法,帮助大家实现随机抽取0-100之间不重复的10个数,具体内容如下 第一种利用数组长度可改写的特点 思路:可以从0到100的数用for循环出来放在一个数组中,然后将这100个数利用sort()随机

  • 问题内容: 我想从列表列表中删除所有重复列表。 所以我有一个这样的清单清单。 我希望有: 我不知道该怎么办。 谢谢 问题答案: 您可以使用一组: 或者,如果您更喜欢列表推导/生成器: 最后,如果顺序很重要,则可以始终对b进行排序: