List<SchemaRowRuleEo> userRowRuleList = schemaRowRuleList.stream() .filter(schemaRowRuleEo -> { List<String> userList = JSONObject.parseArray(schemaRowRuleEo.getRowPermissionUserList(), String.class); List<String> orgList = JSONObject.parseArray(schemaRowRuleEo.getRowPermissionOrgList(), String.class); return userList.contains(userUid) || orgList.contains(orgCode) || userList.contains("") || orgList.contains(""); }) .collect(Collectors.toList());OrgCode为null会异常
时间: 2024-02-03 17:13:18 浏览: 78
如果 `orgCode` 有可能为 `null`,则可以在 `filter` 方法中加入一个判断,避免出现 `NullPointerException` 异常。
例如,可以使用 `Objects.equals()` 方法来比较 `orgCode` 是否等于 `null`。修改后的代码如下:
```
List<SchemaRowRuleEo> userRowRuleList = schemaRowRuleList.stream()
.filter(schemaRowRuleEo -> {
List<String> userList = JSONObject.parseArray(schemaRowRuleEo.getRowPermissionUserList(), String.class);
List<String> orgList = JSONObject.parseArray(schemaRowRuleEo.getRowPermissionOrgList(), String.class);
return userList.contains(userUid) || orgList.contains(orgCode) || userList.contains("") || orgList.contains("") || Objects.equals(orgCode, null);
})
.collect(Collectors.toList());
```
这样,即使 `orgCode` 为 `null`,也不会抛出异常了。
阅读全文