Size: a a a

2020 September 11

SN

Sergey Nikulitsa in pro.jvm
Denis Chikanov
Это совершенно лишние затраты ресурсов, не в руках дело, в джаве это тоже в одну операцию делается
Каста преждевременных оптимизаторов?)
источник

SG

Sergey Grushin in pro.jvm
Sergey Nikulitsa
Каста преждевременных оптимизаторов?)
+
источник

DC

Denis Chikanov in pro.jvm
Sergey Nikulitsa
Каста преждевременных оптимизаторов?)
Каста "когда можно сделать что-то в примерно столько же строчек без создания лишней копии коллекции, о размере которой я ничего не знаю, я лучше так и сделаю"
источник

D

Dima in pro.jvm
Sergey Grushin
Здрасьте. Скажите пожалуйста безопасно ли удалять элементы из коллекции прямо из for-each?
А если по индексу?
нет, будет ConcurrentModificationException
источник

D

Dima in pro.jvm
используйте итератор, стримы
источник

SG

Sergey Grushin in pro.jvm
Dima
используйте итератор, стримы
Спасибо) Мне уже подсказали. Я переписал на итератор
источник

D

Dima in pro.jvm
Sergey Grushin
Спасибо) Мне уже подсказали. Я переписал на итератор
@javastart - чат для таких вопросов
источник

SG

Sergey Grushin in pro.jvm
Dima
@javastart - чат для таких вопросов
да, я знаю. просто вопрос хоть и по азам, но ответ хотелось услышать от pro
источник

D

Dima in pro.jvm
там вполне pro сидят)
источник

SN

Sergey Nikulitsa in pro.jvm
Denis Chikanov
Каста "когда можно сделать что-то в примерно столько же строчек без создания лишней копии коллекции, о размере которой я ничего не знаю, я лучше так и сделаю"
🤔 разумно.
Но всё же я склоняюсь к тому, чтобы сперва писать максимально понятный код, а потом думать над оптимизациями и корнер-кейсам.
источник

SG

Sergey Grushin in pro.jvm
а, тогда я ливаю :D
источник

D

Dima in pro.jvm
даже Тагир иногда отвечает
источник

A

Artjom Kalita in pro.jvm
Denis Chikanov
Подойдёт, но тебе надо будет пересобирать стрим обратно в коллекцию, такое себе
а что в этом такое себе ?
источник

DC

Denis Chikanov in pro.jvm
Artjom Kalita
а что в этом такое себе ?
Если тебе не нужна исходная версия коллекции, это в сравнении с iterator.remove расходует больше ресурсов же (и память, пусть и вероятно незначительно, и время).
Нет, если бы переписать это без этих затрат было сложно, я бы сам сказал "зачем вы оптимизируете заранее", но тут же, считай, одинаковое количество кода получается на "модифицировать исходную коллекцию через итератор" и "собрать копию старой коллекции, отфильтровав элементы".
источник

OO

Oleksandr Olgashko in pro.jvm
как же хорошо жить, когда вопрос "чем убрать элемент из списка" вообще не возникает
источник

OO

Oleksandr Olgashko in pro.jvm
нет мутабельности, нет проблем
источник

DP

Denis Pavlyuchenko in pro.jvm
Oleksandr Olgashko
нет мутабельности, нет проблем
так, а куда проблемы перфоманса и аллокаций делись?)
источник

OO

Oleksandr Olgashko in pro.jvm
сразу с козырей заходишь, ясно)
источник

g

guga in pro.jvm
клевый ник
источник

SN

Sergey Nikulitsa in pro.jvm
Denis Pavlyuchenko
так, а куда проблемы перфоманса и аллокаций делись?)
Быстро аллоцировали, заюзали и выбросили (отдали сборщику). Ну конечно если в коллекции 100500 элементов, то не проканает такой финт)
источник