В чем разница между методом ArrayList
и выбором дублирующей фильтрации и преимуществами использования этого?Разница между ArrayList содержит() метод и набор повторяющейся фильтрации
ответ
Если у вас есть Set
, он гарантирует, что он не может содержать повторяющиеся элементы на основе equals
. Используя List
, он не делает этого автоматически. Вы должны использовать
if(!list.contains(element)){
list.add(element);
}
смотри также What is the difference between Set and List?
Что касается производительности, это зависит от вашей схемы использования. Это зависит от того, какие операции вы часто делаете. В любом случае, если у вас нет особых требований, которые действительно необходимы для оптимизации производительности, используйте Set
, так как это делает ваше намерение более ясным.
Благодарим вас за ответ. Но я хочу знать, есть ли какие-либо преимущества в производительности, если мы используйте метод Set вместо ArrayList contains() при добавлении элементов. Какова наилучшая практика и почему? –
@PavithraReddy: обновил мой ответ – user140547
Комплект гарантирует отсутствие дубликатов. Если вы хотите иметь коллекцию, которая не имеет дубликатов, использование Set означает, что вам не нужно выполнять дублирование самостоятельно. Поэтому вам нужно писать, тестировать и отлаживать меньше кода. Это делает вас более продуктивным. Вы заменяете код, который вы можете написать с кодом в реализации Set. Поскольку авторы этого кода, вероятно, намного лучше программистов, чем вы, этот код будет более эффективным и менее глючным, чем код, который вы могли бы написать. Реализация HashSet, в частности, делает прошлые вставки. Любой, кто читает ваш код (включая будущее), который имеет набор, а не коллекцию или список, может сразу увидеть, что коллекция не имеет дубликатов. Это делает ваш код частично и надежно документирует себя.
- 1. Разница между добавлением и набором в arraylist
- 2. разница между ListView и ArrayList
- 3. чем разница между равными и содержит методы
- 4. Набор Метод ArrayList бросает IndexOutOfBoundsException
- 5. Применение ArrayList Содержит метод DataRow
- 6. использование содержит метод в ArrayList
- 7. Как ArrayList содержит метод работы?
- 8. Разница между содержит и содержит <> в C#
- 9. Разница между фоном работы Hangfire и повторяющейся работой?
- 10. Значительная разница между содержит и сдерживается?
- 11. разница между методом среза и получить метод
- 12. разница между векторным и потокобезопасным arraylist
- 13. В чем разница между ArrayList и ObservableList?
- 14. Разница между ArrayListMultimap.create() и RowData = new ArrayList();
- 15. Разница между ArrayList и массивом объекта
- 16. В чем разница между массивом и ArrayList?
- 17. В чем разница между listStore и arrayList?
- 18. В чем разница между List и ArrayList?
- 19. Разница между ArrayList <String> и ArrayList <>?
- 20. Создайте ArrayList, который содержит набор чисел между заданным пользователем минимальным и максимальной величиной (JAVA)
- 21. Разница между map.keySet(). Содержит() и map.containsKey()
- 22. Drools: разница между содержит и член
- 23. Удалить набор повторяющихся записей и держать другой набор повторяющейся записи
- 24. коллекции и список содержит метод
- 25. Java набор и содержит
- 26. Java ArrayList Содержит() метод не работает
- 27. Java. ArrayList содержит метод не работает
- 28. ArrayList содержит() не использует метод equals() класса
- 29. Разница между Add и AddRange в arrayList C#
- 30. ArrayList и разница Массив
Вы должны взять класс по структурам данных и алгоритмам – ControlAltDel
Метод ArrayList.contains() возвращает значение true, если объект содержится в ArrayList. Можете ли вы рассказать о _set duplicate filteration_? – sshah
При вставке значений в набор Это не позволит дублировать. Но мы можем добиться такой же функциональности в arrayList, используя метод contains. Итак, почему нам нужно использовать набор для уникальных элементов. Пожалуйста, объясните, есть ли какие-либо преимущества с помощью набора (с точки зрения производительности и т. Д.). –