假设我有10个名字的集合。在单击按钮时,程序应该从该集合中生成随机名称。它是如何实现的?
答案 0 :(得分:4)
假设您有一个字符串集合(List):
List<String> list;
然后得到一个随机的:
Collections.shuffle(list);
String random = list.get(0);
实际上你可以使用混洗列表中的任何元素,但第一个(.get(0)
)似乎是最简单的。
答案 1 :(得分:1)
您可以尝试类似
的内容list.get((int) (Math.random() * list.size()))
如果您没有List
,但是其他类型的集合不支持索引,您仍然可以使用类似的东西:
new ArrayList<>(col).get((int) (Math.random() * col.size()))
答案 2 :(得分:0)
假设我有10个名字的集合。
String[] names = new String[10];
// Make sure you init the array
点击一个按钮,程序应该生成一个随机名称 来自那个系列。
我假设通过从该集合中生成一个随机名称,您的意思是从该集合中选择一个随机名称。
private String onButtonClicked() {
return names[getRandomNumber(0, names.length - 1);];
}
private static int getRandomNumber(int begin, int end) {
Random generator = new Random();
return generator.nextInt(end - begin + 1) + begin;
}
我希望有所帮助。