Показать сообщение отдельно
Непрочитано 25.12.2016, 12:29   #8

По умолчанию Re: LinkedHashMap в эффекте

Цитата:
Сообщение от Anikey Посмотреть сообщение
Mangol,
PHP код:
final LinkedHashMap<ObjectObjectlinked = new LinkedHashMap<>();
linked.put("1""1");
linked.put("2""2");
linked.put("3""3"); 
Следующие выражения выбьют ошибку:
Java 8:
PHP код:
linked.entrySet().stream().filter((i) -> ("3".equals(i.getKey()))).forEachOrdered((i) -> {
     
linked.remove(i.getKey());
}); 
Ниже 8 версии:
PHP код:
for (Entry<ObjectObjectlinked.entrySet()) {
    if (
"3".equals(i.getKey())) {
         
linked.remove(i.getKey());
    }

А вот это решение отработает правильно и без ошибок:
PHP код:
[COLOR="red"]final Iterator<Entry<ObjectObject>> linked.entrySet().iterator();
while (
i.hasNext()) {
    if (
"3".equals(i.next().getKey())) {
       
i.remove();
    }
}[/
COLOR
if ("2".equals(i.next().getKey())) {
i.remove();
}

Сделай 2-ое удаление
__________________
Mangol вне форума Отправить сообщение для Mangol с помощью ICQ Ответить с цитированием
Сказали спасибо: