使用lambda的forEnch表达式,return返回无效解决方案
问题背景
使用lambda的forEnch表达式,里面的return返回是没有效果的
解决方案
1 设置一个标志位flag,写一个伪代码表示
//设置返回标志位
AtomicBoolean flag = new AtomicBoolean(false);
feature.forEach((key, value) -> {
if (inMap.containsKey(key)) {
String value = String.valueOf(value);
if (feaMap.containsKey(value)) {
Map<String, Object> codeMap = new HashMap<>();
codeMap.put("code", value);
} else {
response.setCode(INNER_ERROR);
response.setMsg(value + "入参不存在");
flag .set(true);
}
} else {
response.setCode(INNER_ERROR);
response.setMsg(key+ "入参不存在");
flag .set(true);
}
});
if (flag .get()) {
return;
}
总结
- 搞了半天我的返回给不在了
作为程序员第 165 篇文章,每次写一句歌词记录一下,看看人生有几首歌的时间,wahahaha …