vue项目接口域名动态的获取方法
458
2022-11-04
JAVA List和Map切割工具详解
使用php开发的同学都知道array_chunk函数,其作用是将数据进行切割分段,但是在 java中却找不到合适的给List和Map分段的函数。
在此我写了一个切割工具,分享一下
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
* @author lanfangyi
* @version 1.0
* @since 2019/2/28 20:39
*/
public class CollectionUtil {
private CollectionUtil(){
}
/**
* 将map切成段,作用与PHP的array_chunk函数相当
*
* @param chunkMap 被切段的map
* @param chunkNum 每段的大小
* @param
* @param
* @return
*/
public static
if (chunkMap == null || chunkNum <= 0) {
List
list.add(chunkMap);
return list;
}
Set
Iterator
int i = 1;
List
Map
while (iterator.hasNext()) {
k next = ithttp://erator.next();
tem.put(next, chunkMap.get(next));
if (i == chunkNum) {
total.add(tem);
tem = new HashMap<>();
i = 0;
}
i++;
}
if(!ColleNIfRtzrictionUtils.isEmpty(tem)){
total.add(tem);
}
return total;
}
/**
* 将list切割
*
* @param chunkList 被分隔的数组
* @param chunkNum 每段的大小
* @param
* @return
*/
public static > listChunk(List
if (chunkList == null || chunkNum <= 0) {
List> t = new ArrayList<>();
t.add(chunkList);
return t;
}
Iterator
int i = 1;
List> total = new ArrayList<>();
List
while (iterator.hasNext()) {
T next = iterator.next();
tem.add(next);
if (i == chunkNum) {
total.add(tem);
tem = new ArrayList<>();
i = 0;
}
i++;
}
if(!CollectionUtils.isEmpty(tem)){
total.add(tem);
}
return total;
}
}
补充:java中List集合存放Map
list集合存放Map示例:
List
Map
List
map.put("list",list);
listMap.add(map);
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~