Java 比较集合中的键后从映射中删除项

Java 比较集合中的键后从映射中删除项,java,collections,Java,Collections,我有一张地图&一张集合 说 如何使用Java8更简洁地实现它?您可以使用这样的流 mapA.entrySet().removeIf(e -> { if(setB.contains(e.getKey())){ return true; } LOGGER.error(e.getKey() + " does not exist"); return false; }); 或者,如果不需要这些值,可以调用键集: mapA.keyS

我有一张
地图
&一张
集合


如何使用Java8更简洁地实现它?

您可以使用这样的流

mapA.entrySet().removeIf(e -> {
    if(setB.contains(e.getKey())){
        return true;
    }
    LOGGER.error(e.getKey() + " does not exist");
    return false;
});
或者,如果不需要这些值,可以调用键集:

mapA.keySet().removeIf(k -> {
    if (setB.contains(k)) {
        return true;
    }
    LOGGER.error(k + " does not exist");
    return false;
});

您可以使用这样的流

mapA.entrySet().removeIf(e -> {
    if(setB.contains(e.getKey())){
        return true;
    }
    LOGGER.error(e.getKey() + " does not exist");
    return false;
});
或者,如果不需要这些值,可以调用键集:

mapA.keySet().removeIf(k -> {
    if (setB.contains(k)) {
        return true;
    }
    LOGGER.error(k + " does not exist");
    return false;
});