温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

List和Map切割工具如何在JAVA项目中使用

发布时间:2021-02-04 18:12:35 来源:亿速云 阅读:234 作者:Leah 栏目:开发技术

本篇文章给大家分享的是有关List和Map切割工具如何在JAVA项目中使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

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; public class CollectionUtil {   private CollectionUtil(){   }   /**    * 将map切成段,作用与PHP的array_chunk函数相当    *    * @param chunkMap 被切段的map    * @param chunkNum 每段的大小    * @param <k>   map的key类型    * @param <v>   map的value类型 如果是自定义类型,则必须实现equals和hashCode方法    * @return    */   public static <k, v> List<Map<k, v>> mapChunk(Map<k, v> chunkMap, int chunkNum) {     if (chunkMap == null || chunkNum <= 0) {       List<Map<k, v>> list = new ArrayList<>();       list.add(chunkMap);       return list;     }     Set<k> keySet = chunkMap.keySet();     Iterator<k> iterator = keySet.iterator();     int i = 1;     List<Map<k, v>> total = new ArrayList<>();     Map<k, v> tem = new HashMap<>();     while (iterator.hasNext()) {       k next = iterator.next();       tem.put(next, chunkMap.get(next));       if (i == chunkNum) {         total.add(tem);         tem = new HashMap<>();         i = 0;       }       i++;     }     if(!CollectionUtils.isEmpty(tem)){       total.add(tem);     }     return total;   }   /**    * 将list切割    *    * @param chunkList 被分隔的数组    * @param chunkNum 每段的大小    * @param <T>    List中的类型    * @return    */   public static <T> List<List<T>> listChunk(List<T> chunkList, int chunkNum) {     if (chunkList == null || chunkNum <= 0) {       List<List<T>> t = new ArrayList<>();       t.add(chunkList);       return t;     }     Iterator<T> iterator = chunkList.iterator();     int i = 1;     List<List<T>> total = new ArrayList<>();     List<T> tem = new ArrayList<>();     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<String,Object>> listMap = new ArrayList<>(); Map<String,Object> map = new HashMap<String,Object>(); List<Entity> list = new ArrayList<>(); map.put("list",list); listMap.add(map);

以上就是List和Map切割工具如何在JAVA项目中使用,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI