这是实现所需结果的另一种方法.我们使用值1到99填充列表.然后我们将列表洗牌并获取前10个值:
public static void main(String[] args) {
ArrayList list = new ArrayList();
for (int i=1; i<100; i++) {
list.add(new Integer(i));
}
Collections.shuffle(list);
for (int i=0; i<10; i++) {
System.out.println(list.get(i));
}
}
您不必导入/直接处理Random,这是一个加号.但是,正如@Voicu所指出的那样(在评论中),shuffle确实利用了随机性:
public static void shuffle(List> list) {
if (r == null) {
r = new Random();
}
shuffle(list, r);
}
private static Random r;