如何从一组独特元素中提取N个随机不同的元素?

Rom*_*man 2 java random select hashset

我有一组独特的元素(没有两个相同的元素).我想从集合中提取N个随机和不同的元素.在Java中最简单的方法是什么?

Joa*_*uer 6

Set<MyObject> mySet = getTheSetFromSomeWhere();
List<MyObject> myObjects = new ArrayList<MyObject>(mySet);
Collections.shuffle(myObjects);
myObjects = myObjects.subList(0, n);
Run Code Online (Sandbox Code Playgroud)