Вроде, все реализованно правильно, хотя и кривовато, так как думаю, что можно было короче. Но так или иначе, если под конец перед вызовом в цикле for метода removeItemFromMapByValue вывести список list_doubl, то в нем будут правильные ключи [B, C, E, G, H, M] для удаления. Далее я просто передаю каждый ключ в уже заранее реализованный метод removeItemFromMapByValue, но условие все равно не выполняется. Почему? Я ведь нашел все нужные ключи, разве метод не должен был их удалить?