最近一直在写一个方法,已经有三个地方使用到了。想把它记录下来,以后能够多看看,不至于忘了。
业务需求如同标题中所表达那样
目前有一个list集合,我想随机出listNum个数的list内容。
list//这个list就是数据源
//如果listNum传入空,给一个默认数
if(listNum == null) {
listNum = 10;
}
int returnNum = list.size();
//如果listNum大于数据源list,直接返回list数据源全部数据
if(listNum < list.size()) {
returnNum = listNum;
}
int randomIndex = (int) (Math.random() * (list.size()-returnNum));
List<Bean> resultList= new ArrayList<>();
for (int i = randomIndex; i < randomIndex+returnNum; i++) {
resultList.add(list.get(i));
}
这样每次请求,就能在list内容里获得随机数,然后根据随机下标+returnNum获得数据。