首页 > 其他分享 >map三种赋值及map的get方法使用、Map集合一般用到的方法、map方法-处理请求参数和常用初始化方式

map三种赋值及map的get方法使用、Map集合一般用到的方法、map方法-处理请求参数和常用初始化方式

时间:2023-02-25 11:31:32浏览次数:30  
标签:map String Map get collect key 方法


map三种赋值及map的get方法使用

一、map三种赋值

map String—>String
map String–>Object
map String–>List<对象>
1、
Map<Long, User> userMap = userRes.getData().stream().collect(Collectors.toMap(User::getId, i -> i));
List userChannelList = userChannelRemoteService.listAll().getData();

2、
Map<String, String> userChannelMap = userChannelList.stream()
.collect(Collectors.toMap(UserChannel::getChannelCode, UserChannel::getChannelName));

3、
if (CollectionUtil.isNotEmpty(sysDataDictList)) {
Map<String, List< SysDataDict>> map = sysDataDictList.stream()
.collect(Collectors.groupingBy(SysDataDict::getDictGroup));
map.forEach((key, value) -> {
itemConfigRespList.add(getCollectionItemConfigResp(key, value));
});
}

二、map的get方法使用

public static void main(String[] args) {
Map<Integer, Object> map = new HashMap<Integer, Object>();
map.put(1,111);
map.put(2,222);
String s = "1";
Object o = map.get(s);
sout(0)
}

Map集合一般用到的方法

public Set keySet()
将Map所有的key封装到一个Set集合
set…

public V get(Object key)
根据key获取Map对应的value
get…

public Set<Map.Entry<K,V>> entrySet()
获取所有的键值对对象集合

public Collection values()
将Map中所有的value封装到一个Collection体系的集合中

public static void main(String[] args) {
Map<Integer, Object> map = new HashMap<Integer, Object>();
map.put(1,111);
map.put(2,222);
String s = "1";
Object o = map.get(s);
sout(0);
o = map.get(Long.parseLong(s));
sout(o);
o = map.get(Integer.parseInt(s));
sout(o);
}
null
null
111

map方法-处理请求参数和常用初始化方式

private Map<String, String> getGeoHashHeatMapDataMap(String categoryInfo) {
List<KeyValueData> categoryList = JSONObject.parseArray(categoryInfo, KeyValueData.class);
Map<String, String> map = categoryList.stream()
.collect(Collectors.toMap(KeyValueData::getK, KeyValueData::getV));
return map;
}
List<UserCustomerServiceRecord> customerServiceRecordList =
userCustomerServiceRemoteService.listStaffName().getData();
Map<String, UserCustomerServiceRecord> customerServiceRecordMap = customerServiceRecordList.stream()
.collect(Collectors.toMap(UserCustomerServiceRecord::getStaffId, i -> i));

分组map

Map<String, List<SysDataDict>> dictGroupMap = dictGroupList.stream()
.collect(Collectors.groupingBy(SysDataDict::getDictGroup));
Map<String, List<CollectShopCompareResp.ShopTemplateDetailResp>> detailMap = openShopDetailList.stream()
.collect(Collectors.groupingBy(CollectShopCompareResp.ShopTemplateDetailResp::getDictGroup));

list转成map map转成list 数据结构处理

//将modelPropertyList数据结构处理成shopList
List<CollectionItemContentResp> child = item.getChild();
Map<String, String> childMap = child.stream()
.collect(Collectors.toMap(CollectionItemContentResp::getDataKey,
CollectionItemContentResp::getValue));
List<BunkSaveReq> shopList = new LinkedList<>();
Iterator<String> iterator = childMap.keySet().iterator();
while (iterator.hasNext()) {
String key = iterator.next();
BunkSaveReq bunkSaveReq = new BunkSaveReq();
bunkSaveReq.setKey(key);
bunkSaveReq.setValue(childMap.get(key));
shopList.add(bunkSaveReq);
}

list转成map
map转成list

开发尽量用map,提升代码复杂能力


标签:map,String,Map,get,collect,key,方法
From: https://blog.51cto.com/u_14604401/6085098

相关文章

  • getActivePinia was called with no active Pinia. Did you forget to install pi
    vue3+vue-router4参考:https://blog.csdn.net/qq_21473443/article/details/126405859stores/store.ts//在这里而不是在main.ts中创建的原因是,permission.ts中使用pini......
  • Java 8 Lambda 方法引用 简记
    Lambda表达式以及方法引用Java8的新特性笔记,重点讲的是:Lambda函数式接口方法引用Steam流Lambda表达式Lambda的基础使用不记录,记录JDK8实战书上的一些底......
  • Python常见面试题006 类方法、类实例方法、静态方法有何区别?
    006.Python中类方法、类实例方法、静态方法有何区别?全部放一个里面篇幅过大了,就拆分成1个个发布示例代码classHuman:def__init__(self,name):self.......
  • 因外部依赖包内方法签名修改而导致线上NoSuchMethodError异常
    NoSuchMethodError异常问题描述修复大数据组件包包中的漏洞,将hive-common3.1.2版本升级到3.1.3,导致在连接hive表,查询schema时出现NosuchMethodError异常。报错堆栈信息......
  • 简易Map模板
    非红黑树,排序+二分搜索,查找修改O(logN),插入删除O(N)#ifndefMAP_H#defineMAP_H#include"main.h"/*----------Custom----------*/typedefstruct{short*Ad......
  • SMC的实现方法
    以前以为SMC只能用汇编写,现在翻blog发现可以用vs写SMC的原理就是程序中的部分代码在运行之前是一坨乱七八糟的数据,但在执行了相关解密函数对其解密后,它就变成了正常的可执......
  • 【高数复习笔记】计算不定积分的一些方法
    【高数复习笔记】计算不定积分的一些方法快期末了,题做厌了就随手写点东西-_-然后摆烂~~凑微分​ 凑微分要求对一些常见函数的原函数十分熟悉,而且还要熟悉微分的运算法......
  • centos本地yum源配置方法
    1.   放入Centos6.4的镜像光盘或找到镜像文件mount–oloop–tiso9660CentOS-6.0-i386-bin-DVD.isomount /dev/cdrom /media/cdrom​2.   2编辑repo文件:cd......
  • 极光笔记 | 埋点体系建设与实施方法论
    PART 01 前言随着网络技术的发展,从粗犷型到精细化运营型,再到现在的数字化运营,数据变得越来越细分和重要,不仅可以进行策略调整,还可以实现自动化的精细化运营。而数据价值......
  • 极光笔记 | 埋点体系建设与实施方法论
    PART01前言随着网络技术的发展,从粗犷型到精细化运营型,再到现在的数字化运营,数据变得越来越细分和重要,不仅可以进行策略调整,还可以实现自动化的精细化运营。而数据价值......