Size: a a a

Programming Offtop

2020 May 19

BP

Bogdan Panchenko in Programming Offtop
Alexander Nozik
Вообще, вариант линейный по сложности, но стоящий немного памяти - это создать новую коллекцию, копируя туда только нужные элементы. Оно будет сильно дешевле, чем вставка элементов в ArrayList
там другая: ObservableList
источник

AN

Alexander Nozik in Programming Offtop
Bogdan Panchenko
ну так как раз важен, я сначала сделал через копирования масива, ибо они быстро копируются, но потом подумал что алгоритм O(n)
ну так n будет всегда, пройтись-то один раз надо
источник

AN

Alexander Nozik in Programming Offtop
Bogdan Panchenko
там другая: ObservableList
ааа, тогда дешево не получится.Удаление из середины - дико дорого если унутре arrayList
источник

BP

Bogdan Panchenko in Programming Offtop
Alexander Nozik
ну так n будет всегда, пройтись-то один раз надо
да ошибся. Сейчас через индекс сделал
источник

AN

Alexander Nozik in Programming Offtop
А это чей ObservableList? JavaFX?
источник

BP

Bogdan Panchenko in Programming Offtop
да)
источник

AN

Alexander Nozik in Programming Offtop
я там какой-то трюк для этого делал. Сейчас попробую вспомнить...
источник

AN

Alexander Nozik in Programming Offtop
Ага, там интерфейс, можно подменить реализацию.  Но  стоит делать только если это такой серьезный ботлнек
источник

AN

Alexander Nozik in Programming Offtop
Еще если эта фигня часто меняется целиком, можно использовать ListBinding
источник

BP

Bogdan Panchenko in Programming Offtop
Alexander Nozik
Ага, там интерфейс, можно подменить реализацию.  Но  стоит делать только если это такой серьезный ботлнек
не это вообще код не мой. Это таблица - задача пройтись по ячекам столбца и пометить ячейки
источник

AN

Alexander Nozik in Programming Offtop
Bogdan Panchenko
не это вообще код не мой. Это таблица - задача пройтись по ячекам столбца и пометить ячейки
А, ну тогда только через выписывание элементов и удаление через removeAll
источник

BP

Bogdan Panchenko in Programming Offtop
Alexander Nozik
А, ну тогда только через выписывание элементов и удаление через removeAll
а если сделать добавление по индексу а уделание через removeAll ?
источник

AN

Alexander Nozik in Programming Offtop
Bogdan Panchenko
а если сделать добавление по индексу а уделание через removeAll ?
Да, можно так. Но имейте в виду, что если там под капотом ArrayList, то каждая вставка по цене как копирование всего хвоста.
источник

AN

Alexander Nozik in Programming Offtop
Я не знаю, оптимизирован ли removeAll, но думаю, что оптимизирован
источник

VN

Viktor Noskin in Programming Offtop
https://deno.land/
выглядит прикольно
источник

BP

Bogdan Panchenko in Programming Offtop
Alexander Nozik
Да, можно так. Но имейте в виду, что если там под капотом ArrayList, то каждая вставка по цене как копирование всего хвоста.
Ну я думаю что на 99% что там именно ArrayList
источник

AN

Alexander Nozik in Programming Offtop
Bogdan Panchenko
Ну я думаю что на 99% что там именно ArrayList
С очень большой вероятностью
источник

AN

Alexander Nozik in Programming Offtop
Viktor Noskin
https://deno.land/
выглядит прикольно
уже обсуждали, да. Я правда не понял, какой в нем смысл по сравнению с JVM.
источник

AN

Alexander Nozik in Programming Offtop
Bogdan Panchenko
Ну я думаю что на 99% что там именно ArrayList
Поэтому если есть возможность игнорировать порядок, лучше делать addAll в конец
источник

VN

Viktor Noskin in Programming Offtop
Alexander Nozik
уже обсуждали, да. Я правда не понял, какой в нем смысл по сравнению с JVM.
ну я так понимаю это больше замена nodejs, не?
источник