您现在的位置是:首页 > 技术教程 正文

Object转List

admin 阅读: 2024-03-19
后台-插件-广告管理-内容页头部广告(手机)
1.背景

工作中经常会遇到一个map存key为string类型 value存object,方便我们下文代码获取数据

2.例如
Map<String, Object> result= new HashMap<>(); List<Map<String, Object>> sheet1Result = new ArrayList<>(); List<String> headMap = new ArrayList(); result.put("sheet1Result", sheet1Result); result.put("sheet1ResultHeadMap", headMap);
  • 1
  • 2
  • 3
  • 4
  • 5

上述这种情况就是,一个map存在多个类型

下文获取需要将object转为list

3.方法
//object转为List public static <T> List<T> castList(Object obj, Class<T> clazz) { List<T> result = new ArrayList<T>(); if (obj instanceof List<?>) { for (Object o : (List<?>) obj) { result.add(clazz.cast(o)); } return result; } return null; }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
//object转为Map public static <K, V> List<Map<K, V>> castListMap(Object obj, Class<K> kCalzz, Class<V> vCalzz) { List<Map<K, V>> result = new ArrayList<>(); if (obj instanceof List<?>) { for (Object mapObj : (List<?>) obj) { if (mapObj instanceof Map<?, ?>) { Map<K, V> map = new HashMap<>(16); for (Map.Entry<?, ?> entry : ((Map<?, ?>) mapObj).entrySet()) { map.put(kCalzz.cast(entry.getKey()), vCalzz.cast(entry.getValue())); } result.add(map); } } return result; } return null; }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
标签:
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

在线投稿:投稿 站长QQ:1888636

后台-插件-广告管理-内容页尾部广告(手机)
关注我们

扫一扫关注我们,了解最新精彩内容

搜索