如何在 concurrentHashMap 中突破 foreach

how to break out foreach in concurrentHashMap

我在另一个地图中有一个地图。我必须根据条件来优化我的 code.But 编译器抱怨它。有没有其他方法可以得到我想要的

AtomicBoolean flag1 = new AtomicBoolean(true);
AtomicBoolean flag2 = new AtomicBoolean(true);

AtomicInteger count = new AtomicInteger(0);

s.getMap.forEach((k,v)->{
    v.forEach((k1,v1)-> {
        if(v1) flag2.set(false);
        else flag1.set(false);

        if (count.incrementAndGet() > 1 && ((!flag1.get()) || (!flag2.get()))) {
            break;
        }

});

您不能使用 forEach 方法中断迭代。如果您想退出循环,您必须在地图的入口集上使用传统的 for-each 循环。