使用lambda的forEnch表达式,return返回无效解决方案

@TOC

问题背景

使用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 ...

Lyric: 包括像猫的狗

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容