我有很多国家。我想从阵列列表中随机选择5个国家/地区,但我希望它们是唯一的。
这是我到目前为止所拥有的:

String allCountries[] = {"Finland", "Latvia", "Poland", "Afghanistan", "Albania", "Algeria"};

String country1 = (allCountries[new Random().nextInt(allCountries.length)]);
String country2 = (allCountries[new Random().nextInt(allCountries.length)]);
String country3 = (allCountries[new Random().nextInt(allCountries.length)]);
String country4 = (allCountries[new Random().nextInt(allCountries.length)]);
String country5 = (allCountries[new Random().nextInt(allCountries.length)]);

在生成随机元素时比较这些字符串的最佳方法是什么?

编辑:

我表示不好。我的问题是我不希望字符串country1,country 2等相同...所以我希望它们始终是不同的。

解决方案:
Collections.shuffle(Arrays.asList(allCountries));

最佳答案

随机排列数组,然后切片前5个元素。

这将保证5个唯一的随机元素。

07-24 09:39