我有2个列表:
//Dynamic lists - sent in request
List<String> types = {"VCX", "ATCH", "Warrnty"};
//hardcoded eligble list in code
List<String> eligibleTypes = {"VCX", "ATCH", "Warrnty"};
现在,如果types列表中的任何条目存在于硬编码的[[eligibleTypes列表中,我想返回true?如何使用Java流编写干净的代码?
boolean isAnyChildEligible = types.stream()
.anyMatch(type -> isEligibleProgram(type, eligibleTypes));
private boolean isEligibleProgram(String type, List<String> eligibleTypes) {
if(!CollectionUtils.isEmpty(eligibleTypes) && eligibleTypes.contains(type)) {
return true;
}
return false;
}
还有其他更好的方法吗?使用其他方法?上面的方法还能工作吗?
希望这会有所帮助!