我试图在java中的整数列表中对值进行洗牌。我尝试使用以下方法,但它没有被洗牌。
List<Integer> dataList1 = new ArrayList<Integer>();
//adding values to list
Collections.shuffle(Arrays.asList(dataList1));
我哪里错了?
答案 0 :(得分:6)
shuffle
随机播放您传递的列表。目前,您传递的列表不是dataList1
,而是从dataLits1
创建的新列表。对于那个新的列表,你没有引用,所以一旦你完成了洗牌,你就不再能够访问那个带有混乱结果的新创建的列表了。
相反,你应该做的是:
Collections.shuffle(dataList1);