从集合List对象中抽取两种属性转Map

从集合List<对象>中抽取两种属性转Map

Map map = data.stream().collect(Collectors.toMap(Person::getAge, Person::getName));

注意,若果有两个对象属性一样会报错,IllegalStateException: Duplicate key xxx,key key重复了
需要处理重复key

Map map = data.stream().collect(Collectors.toMap(Person::getAge, Person::getName,(value1, value2 )->{ 
            return value2; 
	}));

这里的解决key重复的方案是碰到两个一样的使用第二个,这里可以灵活处理

你可能感兴趣的:(java,java,后端)