原始数据
id | vid | sid |
1 | 1 | 3001 |
2 | 1 | 3002 |
3 | 1 | 3003 |
4 | 3 | 4001 |
5 | 3 | 4002 |
6 | 3 | 4003 |
class Row {
Integer id,
Long vid,
Long sid
}
// 1.查询vid=1,返回所有sid列表
list.stream().map(Row::getVid).collect(Collectors.toList());
// 1.返回
[3001,3002,3003]
// 2.查询vid=[1,2],返回map结构的sid列表
list.stream().collect(
Collectors.groupingBy(
Row::getVid,
Collectors.mapping(Row::getSid, Collectors.toList())
)
)
// 2.返回
{
1: [3001,3002,3003],
2: [4001,4002,4003]
}