向list中添加批量数据然后拿出来每5条执行

在开发中见到一种业务场景,大批量的执行数据会非常耗时,有一种策略就是分批次处理,每次处理一定的数据量,这样会提升处理数据的效率,下面的是我写的代码,上面都写了注释,如有疑问或者更好的思路,建议,请写道评论中,thankyou
这是我写的单元测试,代码可以直接用
@Test
	public void testtheam() {
    
    
		//向list中添加数据,用于后面的测试
		List list = new ArrayList<>();
		for (int i = 1; i < 17; i++) {
    
    
			list.add(i);
		}
		 //list的长度
		 int listSize = list.size();
		 //每5个元素生成一个新list
         int toIndex = 5;
         for (int i = 0; i < list.size(); i += 5) {
    
    
        	  //不足5个元素的生成到一个list中
              if (i + 5 > listSize) {
    
     
                  toIndex = listSize - i;    
              }
              //生成新的list
              List sublist=list.subList(i, i + toIndex);
              Map<String,List> map=new HashMap<String,List>();
              map.put("测试新生成的list:索引从"+i+"--到--"+toIndex, sublist);
              JSONObject jsonObject = JSONObject.fromObject(map);
               //3、将json对象转化为json字符串
               String returnjson = jsonObject.toString();
              System.out.println(returnjson );
         }
		
	}
这是控制台跑出来的数据结果,灰常nice
{
    
    "测试新生成的list:索引从0--到--5":[1,2,3,4,5]}
{
    
    "测试新生成的list:索引从5--到--5":[6,7,8,9,10]}
{
    
    "测试新生成的list:索引从10--到--5":[11,12,13,14,15]}
{
    
    "测试新生成的list:索引从15--到--1":[16]}

猜你喜欢

转载自blog.csdn.net/qq_38220334/article/details/108660423
今日推荐