我正在将List<City>
转换为Map<CityType, Set<City>>
。
其中的城市有CityIdentifier, State, Latitude
等字段。
CityIdentifier
中有一个cityName
和cityType
。
对于上述转换,对于Collectors.groupingBy
,我需要一个类似City::getCityType
的函数。我可以使用CityIdentifier
中的吸气剂,例如City::getCityIdentifier.getCityType
吗?
答案 0 :(得分:2)
在此示例中,您不能使用方法引用。
改为使用lambda表达式:
city -> city.getCityIdentifier().getCityType()
完整的管道:
Map<CityType, Set<City>> map =
list.stream()
.collect(Collectors.groupingBy(city -> city.getCityIdentifier().getCityType(),
Collectors.toSet()));