【问题标题】:Insert a number to the random position in an array of random number向随机数数组中的随机位置插入一个数字
【发布时间】:2016-06-23 09:44:23
【问题描述】:

我正在开发一个简单的游戏来添加 2 个数字并在网格视图中选择一个结果。但我只在列表数组的第一个或最后一个位置放了一个数字。如何在不给它精确索引的情况下将我的结果添加到随机位置? 这是我的代码:

x=random.nextInt(11);
a=a+x;
for (int j=1;j<25;){
    int random=((int)(Math.random()*25))+1;
    if (!list.contains(random)){
        list.add (a+random);
        j++;
    }
}

【问题讨论】:

    标签: java android arraylist random


    【解决方案1】:

    只需像您一样将随机数添加到您的列表中,然后调用 Collections.shuffle(List) 以随机重新排列您的列表。

    【讨论】:

      【解决方案2】:
      1. 首先创建具有 N 个值的数组(我们可以说是空白/空)
      2. 现在您需要生成 0 到 N-1 之间的随机数
      3. 使用上述值作为索引并存储您的值。

      【讨论】:

        【解决方案3】:
        private List <Integer> createRandomIndexes() {
            List<Integer> indexes = new ArrayList<>();
            for (int i = 1; i < 25; i++) {
                indexes.add(i);
            }
            Collections.shuffle(indexes);
            return indexes;
        }
        

        这是随机的关键

        Collections.shuffle(indexes);
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2021-02-08
          • 2019-09-08
          • 1970-01-01
          • 2019-03-23
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-04-03
          相关资源
          最近更新 更多