[英]Shuffle range with arraylist
我正在研究Java ArrayList
,我想用从0
到10
随机数填充20个Integer
的ArrayList
。 到目前为止,这是我的代码:
import 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);
}
}
这是输出:
[3,5,9,10,19,8,6,4,15,2,0,18,16,12,14,14,7,17,13,1,11]
如何获得0到10的范围?
Java和我想用从0到10的随机数填充20个元素的ArrayList
在这种情况下,您需要随机数。 没有随机播放功能。
Random rn = new Random();
接着
for (int i = 0; i < 20; i++) {
lista.add(rn.nextInt(10););
}
这样一来,随机数就会一直保持在0到10之间。
你可以改变
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);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.