在处理我的项目时,我创建了一个函数来从中选择一个随机对象ArrayList.每个对象都有一个变量min和max,它定义了对象的选择百分比.
该功能完美无缺,但我使用了十几个细微的变体,因为我有很多ArrayList不同类型的对象,我需要使用它.因此,我想让它通用,所以我只有一个函数的变体,我可以用于我的所有列表.目前,我有这个:
public static <G> int selRan(ArrayList<G> list){
int sel = 0;
Random rand = new Random();
int randNum = rand.nextInt(100) + 1;
for(int i = 0; i < list.size(); i++){
if(list.get(i).min <= randNum && randNum < list.get(i).max){
sel = i;
}
}
return sel;
}
Run Code Online (Sandbox Code Playgroud)
这是我碰到了一个障碍,因为list.get(i).min和list.get(i).max不工作.我不知道如何处理这个问题.