与arraylist的随机播放范围

时间:2017-02-15 03:27:56

标签: java arraylist collections range shuffle

我正在学习Java ArrayList,我希望用ArrayListInteger的随机数填充010import java.util.ArrayList; import java.util.Collections; public class manejoListas { ArrayList<Integer> lista=new ArrayList<>(20); public void llenarLista() { for (int i=0; i<20;i++) { lista.add(i); } Collections.shuffle(lista); System.out.println(lista); } } 个。到目前为止,这是我的代码:

{{1}}

这是输出:

  

[3,5,9,10,19,8,6,4,15,2,0,18,16,12,14,7,17​​,13,1,11]

如何获得0-10的范围?

2 个答案:

答案 0 :(得分:2)

  

Java,我想用0到10之间的随机数填充20个元素的ArrayList

在这种情况下,您需要随机数。不是随机播放功能。

Random rn = new Random();

然后

 for (int i = 0; i < 20; i++) {
        lista.add(rn.nextInt(10););
    }

不断添加0到10之间的随机数。

答案 1 :(得分:1)

你可以改变

lista.add(i);

lista.add(i / 2);

会将范围缩小到0(含) - 10(不包括)。请注意,每个数字都会出现两次。如果您希望值更随机分布,可以使用Random.nextInt(int)之类的

static Random rand = new Random();

public void llenarLista() {
    for (int i = 0; i < 20; i++) {
        lista.add(rand.nextInt(10));
    }
    // Collections.shuffle(lista);
    System.out.println(lista);
}