java实现每次从list集合中取出固定数量的元素
解决方法:
假如queue_List存有百万数据,每次固定取5000条放到list中
BlockingQueue<String> queue_List = new LinkedBlockingQueue<String>();
int max=5000;
int merchant=queue_List.size()/max;
int remainder=queue_List.size()%max;
int count=0;
if(merchant==0){
count++;
}else if(merchant>0&&remainder==0){
count=merchant;
}else if(merchant>0&&remainder>0){
count=merchant+1;
}
for(int j=0;j<count;j++){
List<String> arrayList = new ArrayList<String>();
ueue_List.drainTo(arrayList, max);//每次取5000个,不够就取剩下的
}