/**
* 第一题
* 题目:编写一个Java函数,实现批量获取数据的功能(BService.get(List<Integer> ids))。具体要求如下:
* 1)提供一个函数BService.get(List<Integer> ids),支持最多传入100个id;
* 2)在BService.get((List<Integer> ids)函数内部,需要将传入的id列表分批(每批10个id)进行调用AService.get(List<Integer> ids)函数获取数据;
* 3)BService.get((List<Integer> ids)函数需要返回所有批次获取的数据的合并结果,即一个包含所有数据的List<Integer>;
*/
public class BService {
public List<Integer> get(List<Integer>ids){
List<Integer>resut=new ArrayList<>();
//分批次数
int count=ids.size()/10;;
if(ids.size()%10!=0){
count=count+1;
}
for (int i = 0; i < count; i++) {
List<Integer>sub=ids.subList(i*10, Math.min(i*10+10, ids.size()));
//获取合并的结果
resut.addAll(Aservice.get(sub));
}
return resut;
}
public static void main(String[] args) {
List<Integer>list=new ArrayList<>();
for (int i = 0; i < 100; i++) {
list.add(i);
}
BService bService=new BService();
List<Integer>res=bService.get(list);
System.out.println("===================");
System.out.println(res);
}
}
import java.util.List;
public class Aservice {
public static List<Integer> get( List<Integer>sub){
System.out.println(sub);
return sub;
}
}