我想改组Arraylist,再也不会出现相同的结果了。

我该如何使用Collections.shuffle(myList);

如果这是答案发布在其他地方,请告诉我。

编辑

这是我显示结果的方式
textView.setText(myList.get(0));

最佳答案

Collections.shuffle不提供该功能。您需要执行一个单独的重复数据删除步骤。 Set将提供该功能。

Set s = new HashSet(myList.size());
s.addAll(myList);
List shuffledList = new ArrayList(s.size());
shuffledList.addAll(s)
// Since items come out of a set in an undefined order, using shuffledList
// in this state may suit your needs. otherwise go ahead and shuffle it too
Collections.shuffle(shuffledList)
return shuffledList;


这是a more advanced question on deduplication

09-20 12:46