我需要在 Java 中实现一个结构,它是一个键值列表(类型为 Integer-String),我想对其进行洗牌。
基本上,我想做这样的事情。
public LinkedHashMap<Integer, String> getQuestionOptionsMap(){
LinkedHashMap<Integer, String> shuffle = new LinkedHashMap<Integer, String> ();
if (answer1 != null)
shuffle.put(new Integer(1), answer1);
if (answer2 != null)
shuffle.put(new Integer(2), answer2);
if (answer3 != null)
shuffle.put(new Integer(3), answer3);
if (answer4 != null)
shuffle.put(new Integer(4), answer4);
Collections.shuffle(shuffle);
return shuffle;
}
但是,HashMap 不能被洗牌。
我可以从 hashmap 中随机获取一个键,然后返回链接的元素,但我确信这不是解决我的问题的最佳解决方案。
有没有更好的办法?
提前致谢。