ConcurrentModificationException Woes [duplicate]

На этот вопрос уже есть ответ:

Итерация по Коллекции, исключение ConcurrentModificationException при удалении объектов в цикле 23 ответа

У меня есть метод test (), в котором я пытаюсь сравнить два LinkedHashMaps друг с другом и изменить содержимое одной из карт, удалив пару ключ / значение, если она найдена в обоих LHM. Я продолжаю получать ConcurrentModificationException при запуске этого метода. Я понимаю, ПОЧЕМУ я получаю исключение (так как я пытаюсь изменить зацикленный список). Я не уверен, как идти дальше с этим, однако. У меня есть этот код до сих пор:

private void test() { ,   

LinkedHashMap<String, BigDecimal>testBene = new LinkedHashMap<String, BigDecimal>();
LinkedHashMap<String, BigDecimal>testDly = new LinkedHashMap<String, BigDecimal>();

testBene.put("ABCDEFG", BigDecimal.ZERO);
testBene.put("BCDEFGH", BigDecimal.ONE);
testBene.put("CDEFGHI", BigDecimal.TEN);

testDly.put("BCDEFGH", BigDecimal.ONE);
testDly.put("Foo", BigDecimal.TEN);
testDly.put("Bar", BigDecimal.TEN);

for (Entry<String, BigDecimal> beneKeySet : testBene.entrySet()) {
    if (testDly.containsKey(beneKeySet.getKey())) {
        for (Entry<String, BigDecimal> dlyKeySet : testDly.entrySet()) {
            if ((dlyKeySet.getKey().equals(beneKeySet.getKey())) && 
                dlyKeySet.getValue().equals(beneKeySet.getValue())) {
                    testBene.remove(dlyKeySet.getKey());
            }
        }
    }
}

}

Ответы на вопрос(4)

Ваш ответ на вопрос