|
|
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, занялся изучением языка Java, написал вот такой код: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Выводит он у меня следующее: Код: java 1. 2. 3. 4. 5. 6. Я так понимаю все индексы стоящие после удаленного элемента сдвигаются на -1? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 10:16 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
VaneS Ri_lax, Учитесь смотреть исходный код в JDK. Любая IDE его может показывать. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 10:23 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
VaneS Ri_lax, Да, в этом и основное отличие от LinkedList. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 11:20 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
no56892VaneS Ri_lax, Да, в этом и основное отличие от LinkedList. Там индексы не сдвигаются? :D ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 11:27 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
Blazkowiczno56892VaneS Ri_lax, Да, в этом и основное отличие от LinkedList. Там индексы не сдвигаются? :D Там их просто нет :D ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 11:34 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
no56892Там их просто нет :D Если бы их небыло, это был был Set, а не List. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 12:21 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
А скажите пожалуйста если я буду добавлять новый элемент вот так Код: java 1. 2. 3. То есть индекс будет случайное число, то как мне потом вывести все элементы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 12:30 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
VaneS Ri_laxТо есть индекс будет случайное число, то как мне потом вывести все элементы? Так же как и обычно. JavaDoc вообще внимательно читали? https://docs.oracle.com/javase/7/docs/api/java/util/List.html#set(int, E) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 12:36 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
Blazkowiczno56892Там их просто нет :D Если бы их небыло, это был был Set, а не List. А да, я че-то ступил. Я имел ввиду, что индекс в коллекциях - возможность доступа к элементу за фикс. время (ArrayList) vs не фикс. (LinkedList). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 12:37 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczVaneS Ri_laxТо есть индекс будет случайное число, то как мне потом вывести все элементы? Так же как и обычно. JavaDoc вообще внимательно читали? https://docs.oracle.com/javase/7/docs/api/java/util/List.html#set(int, E) Спасибо большое, я вроде разобрался! Подскажите пожалуйста еще, можно ли зная значение узнать индекс? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 13:31 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
VaneS Ri_laxПодскажите пожалуйста еще, можно ли зная значение узнать индекс? Сложный вопрос. А что говорит документация? https://docs.oracle.com/javase/7/docs/api/java/util/List.html#indexOf(java.lang.Object) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 13:36 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczVaneS Ri_laxПодскажите пожалуйста еще, можно ли зная значение узнать индекс? Сложный вопрос. А что говорит документация? https://docs.oracle.com/javase/7/docs/api/java/util/List.html#indexOf(java.lang.Object) Да это то я понял, но вот если у меня несколько одинаковых значений, как можно узнать индексы всех этих значений? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 14:23 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
VaneS Ri_lax, Полным перебором. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 14:25 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
VaneS Ri_lax, ты садист. Коллекция плачет от твоих экспериментов. Вобщем эррейлист не любит удалений в "голове" листа. Он колбасит весь хвост. Это как машины в пробке двигаются. Юзай другой тип коллекции. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 15:51 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
maytonэррейлист не любит удалений в "голове" листа. System.arraycopy - нативная оптимизированая операция чуть ли не на инструкциях процессора. Есть мнение что его не особо колбасит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 15:53 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
Всё познаётся в сравнении. Видел перцев которые делали "очередь" на базе ArrayList. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 15:54 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
maytonЮзай другой тип коллекции. Может тогда что посоветуете? Я не говорил что мне нужно удалять начало коллекции. Будут удаляться повторяющиеся значения, а вот в каком месте они стоят, я этого не знаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2014, 07:03 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
Множество хранит (только) уникальные значения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2014, 07:08 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovМножество хранит (только) уникальные значения. Мне не нужно хранить только уникальные, мне нужно чтобы было именно удаление по определенному принципу. Но за совет про множество спасибо, пригодится! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2014, 08:11 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
VaneS Ri_laxmaytonЮзай другой тип коллекции. Может тогда что посоветуете? Я не говорил что мне нужно удалять начало коллекции. Будут удаляться повторяющиеся значения, а вот в каком месте они стоят, я этого не знаю. если известны все значения, которые нужно удалить из коллекции, то можете использовать итератор, проверяя каждый элемент на совпадение с удаляемыми значениями. Один проход и все удалено. Тут IMHO лучше LinkedList (если идеологически) А так правильно тут сказали, смысл использовать лист, если можно сразу set, и ничего удалять не придёться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2014, 09:16 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
VaneS Ri_laxЯ не говорил что мне нужно удалять начало коллекции. Будут удаляться повторяющиеся значения, а вот в каком месте они стоят, я этого не знаю. Все зависит от того как часто. ArrayList хорош на операциях поиска i-го элемента. Ну и на полном сканировании. Если есть правильная оценка сверху количества элементов, которые собираются в него добавить, то и добавление элементов в конец идет быстро. В общем случае, на операциях изменения количества элементов у него могут быть задержки связанные с копированием элементов (вплоть до всех). Если операции удаления редки, а поиск i-го элемента происходит часто, то это одна ситуация, если, наоборот, другая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2014, 11:17 |
|
||
|
Как работает ArrayList?
|
|||
|---|---|---|---|
|
#18+
DDiverесли известны все значения, которые нужно удалить из коллекции, TC написал простым русским языком все те Ai, которые удолетворяют условиям для любых i,j таких, что i>=0 и j>=0 i<A.size() и j<i Aget(i).equals(A.get(j)). DDiverОдин проход и все удалено. ну-ну. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2014, 11:26 |
|
||
|
|

start [/forum/search_topic.php?author=sb8&author_mode=last_posts&do_search=1]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
68ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
| others: | 660ms |
| total: | 824ms |

| 0 / 0 |
