.stream().collect(Collectors.toMap(dto::id, o -> o, (v1, v2) -> v1));
第一个参数dto::id 表示选择dto的id作为map的key值;
第二个参数o -> o表示选择将原来的对象作为map的value值;
第三个参数(v1, v2) -> v1中,如果v1与v2的key值相同,选择v1作为那个key所对应的value值。
如果出现null空指针的情况:
1、赋值时增加null判断,设置默认值
2、使用不同的构建方法(允许null值),HashMap<String, String> hMap= dtos.stream().collect(HashMap::new, (k, v) -> k.put(v.id, v.value), HashMap::putAll);