/**
* 传入一个权限集合&&用户 -> 查询匹配用户拥有的权限 -> 取两个集合的交集并返回 -> 即可得到该用户拥有什么权限
*
* @param operatorId
* @param permissionNameList
* @return
*/
public List<String> filterIdentityPermission(Long operatorId, List<String> permissionNameList) {
List<PermissionResponse> permissionList = findPermissionListByIdentity(operatorId);
List<String> permissions =
permissionList.stream().filter(i -> permissionNameList.stream().anyMatch(name -> i.getName().equals(name)))
.collect(Collectors.toList())
.stream().map(PermissionResponse::getName)
.collect(Collectors.toList());
return permissions;
}
Java8 Stream filter()取集合交集
于 2021-07-05 11:11:16 首次发布