从arraylist中随机获取对象

ser*_*kan 1 java arraylist map

我有一个50 Object秒的阵列.

我希望List每次应用程序启动时随机获取4个对象.

而不是把它们放在一个Map.

如何从数组中随机取出4个对象?

这是我的代码示例:

ArrayList<Deal> dealsTodayArray = dealsToday.getDeals(); 
Map<String, Object> map = new HashMap<String, Object>();
map.put("dealsTodayFirst", dealsTodayFirst);
map.put("dealsTodaySecond", dealsTodaySecond);
map.put("dealsTodayThird", dealsTodayThird);
map.put("dealsTodayForth", dealsTodayForth);
Run Code Online (Sandbox Code Playgroud)

Men*_*ena 5

尝试结合使用Collections.shuffleCollections.subList:

List<String> myStrings = new ArrayList<String>();
myStrings.add("a");
myStrings.add("b");
myStrings.add("c");
myStrings.add("d");
myStrings.add("e");
myStrings.add("f");
Collections.shuffle(myStrings);
System.out.println(myStrings.subList(0, 4));
Run Code Online (Sandbox Code Playgroud)

输出(可能但不保证在每次执行时都会改变):

[c, b, f, d]
Run Code Online (Sandbox Code Playgroud)