我正在尝试按内部类中的url分组。
我有:
public class TripUpdateRequestDtos {
private static final long serialVersionUID = 1L;
private List<TripUpdateRequestDto> requestList = new java.util.ArrayList<TripUpdateRequestDto>();
public List<TripUpdateRequestDto> getRequestList() {
return requestList;
}
public void setRequestList(List<TripUpdateRequestDto> requestList) {
this.requestList = requestList;
}
public void addReqInfo(String apiKey,Long jobTripId, String url)
{
requestList.add(new TripUpdateRequestDto(apiKey,jobTripId, url));
}
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
public static class TripUpdateRequestDto
{
private String apiKey;
private Long jobTripId;
@JsonIgnore
private String url;
}
}
我想通过使用地图和Java 8流进行分组:
Map<String, List<TripUpdateRequestDto>> tripMap = tripUpdateRequestDtos.getRequestList().stream()
.collect(Collectors.groupingBy(???What shall I place here????));
Collectors.groupingBy应该根据url进行分组。我应该在Collectors.groupingBy()中放置什么?
请帮助并询问我是否不清楚。谢谢。
答案 0 :(得分:4)
Map<String, List<TripUpdateRequestDto>> tripMap =
tripUpdateRequestDtos.getRequestList()
.stream()
.collect(Collectors.groupingBy(TripUpdateRequestDto::getUrl));
getUrl
是返回url
的方法。