Res*_*eff 1 java lambda list filter java-8
我有两个清单。第一个是区域的 ID 列表,第二个是具有嵌套区域对象的节点列表。
我的结构nodeList:
....{
"id": 6412,
"name": "303000201",
"description": "desc",
"organization": {
"id": 41065,
"name": "adad",
"address": null
},
"region": {
"id": 21,
"name": "Quba rayonu",
"code": "303"
},
"nodeType": {
"id": "WELL",
"name": "Quyu",
"description": null
},
"location": {
"id": 6412,
"latitude": 41.36735554,
"longitude": 48.5041245554
}} ......
Run Code Online (Sandbox Code Playgroud)
和地区列表:
{
"regions": ["56", "44"]
}
Run Code Online (Sandbox Code Playgroud)
我必须过滤我nodeList的区域 ID。我用旧的方式来做,但我想用 lambda 表达式来做。我该怎么做?
我用谷歌搜索,尝试过,但它不起作用:/
result= nodeList.stream()
.filter(n -> regionIDList.equals(n.getRegion().getId().toString()))
.collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)
先感谢您。
假设regionIDList是一个List,使用contains代替equals:
result = nodeList.stream()
.filter(n -> regionIDList.contains(n.getRegion().getId().toString()))
.collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5944 次 |
| 最近记录: |