Boolean isSuccess = true;
if(aMap.size() != bMap.size())
{
return false;
}
aMap.entrySet().forEach(entry -> {
AKey aKey = entry.getKey();
BValue bValue = bMap.get(aKey);
if(bValue == null)
return;
AValue aValue = entry.getValue();
if(!aValue.getClosed().equals(bValue.getClosed()))
return;
if(!aValue.getClosedToArrival().equals(bValue.getClosedToArrival()))
return;
if(!aValue.getClosedToDeparture().equals(bValue.getClosedToDeparture()))
return;
if(!aValue.getLengthOfStayArrival().equals(bValue.getLengthOfStayArrival()))
return;
});
return isSuccess;
如何验证失败时返回false? 我试图添加返回false,如下面:返回关于Java 8 for each
if(!aValue.getLengthOfStayArrival().equals(bValue.getLengthOfStayArrival()))
return false;
却是意外的表情,谁可以帮我看一下吗?
不使用'forEach'。当你想检查所有元素是否满足条件时,你想使用'allMatch'。顺便说一句,你可以改变你的预测试为'if(!aMap.keySet()。equals(bMap.keySet())return false;'这会检查地图的大小,并且允许忽略'null'测试 – Holger
感谢您的快速回复 –
@Holger嗨,你能帮忙回答一个问题吗?http://stackoverflow.com/questions/43973596/how-to-convert-foreach-to-lambda –