powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Как найти обьект, в двух одинаковых коллекциях
15 сообщений из 15, страница 1 из 1
Как найти обьект, в двух одинаковых коллекциях
    #39141650
Azarnoy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребят такой вопрос: Есть 2 листа, в одном из них на 1 позицию больше, как мне найти тот елемент, которого нету во втором, вид не важен, к примеру:




public static void main(String[] args) {

ArrayList<Integer> nums = new ArrayList<Integer>();
nums.add(0);
nums.add(1);
nums.add(2);
nums.add(3);
nums.add(4);
nums.add(5);
nums.add(6);
nums.add(7);
nums.add(8);
nums.add(9);
nums.add(10);


ArrayList<Integer> nums2 = new ArrayList<Integer>();
nums2.add(0);
nums2.add(1);
nums2.add(2);
nums2.add(3);
nums2.add(4);
nums2.add(5);
nums2.add(6);
nums2.add(7);
nums2.add(8);
nums2.add(9);
...
Рейтинг: 0 / 0
Как найти обьект, в двух одинаковых коллекциях
    #39141656
Фотография Usman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Azarnoy,

Пересечение множеств:
Код: java
1.
2.
3.
4.
5.
6.
7.
System.out.println(nums);
System.out.println(nums2);

java.util.List<Integer> nums3 = new java.util.ArrayList<>(nums);
if (nums3.removeAll(nums2)) {
    System.out.println(nums3);
}

в num3 будет разница
...
Рейтинг: 0 / 0
Как найти обьект, в двух одинаковых коллекциях
    #39141662
Azarnoy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А есть варианты не удаляя листы?
...
Рейтинг: 0 / 0
Как найти обьект, в двух одинаковых коллекциях
    #39141667
Azarnoy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Потому что мне так же надо будет сделать два списка, со статьями, в них найти одинаковые статьи и там же найти статьи с одинаковыми заголовками и датами публикаций
...
Рейтинг: 0 / 0
Как найти обьект, в двух одинаковых коллекциях
    #39141673
Фотография Usman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AzarnoyА есть варианты не удаляя листы? nums и nums2 - остаются без изменений
AzarnoyПотому что мне так же надо будет сделать два списка, со статьями, в них найти одинаковые статьи и там же найти статьи с одинаковыми заголовками и датами публикацийможно создать спец. метод:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
System.out.println(nums);
System.out.println(nums2);
System.out.println(intersect(nums, nums2));

...

public static <T> java.util.List<T> intersect(java.util.List<T> a, java.util.List<T> b) {
    java.util.List<T> result = new java.util.ArrayList<>(a);
    result.removeAll(b);
    return result;
}

эти списки откуда тянутся ? если из БД, то все эти телодвижения прекрасно решаются на уровне SQL-запросов.
...
Рейтинг: 0 / 0
Как найти обьект, в двух одинаковых коллекциях
    #39141683
Azarnoy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Usman,

А не подскажете тогда, если будут 2 списка, к примеру статей, и в них будут одинаковые статьи, возможно не одна, как вычислить?
...
Рейтинг: 0 / 0
Как найти обьект, в двух одинаковых коллекциях
    #39141689
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Azarnoy, на стороне БД эта задача решается примерно так:

Код: java
1.
SQL> SELECT elem FROM NUMS2 WHERE elem not in (SELECT elem from NUMS);



На стороне java эта задача решается аж 10 способами. Но их выбор зависит от прочих нюансов
типа

1) Можно или нельзя менять содержимое коллекций
2) Будет только 1 элемент или их больше
3) Ключ всегда Integer (можем юзать биткарты в некоторых случаях) или нет?
4) Значения в коллекциях ВСЕГДА монотонны (Это можно использовать для оптимизации) или это просто твоя лень при
создании тестового примера?
...
Рейтинг: 0 / 0
Как найти обьект, в двух одинаковых коллекциях
    #39141700
Фотография Usman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

+512
...
Рейтинг: 0 / 0
Как найти обьект, в двух одинаковых коллекциях
    #39141701
Фотография Usman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Azarnoyвозможно не одна, как вычислить?если я Вас правильно понял, тогда записывайте наименования статей в HashSet , чтобы они не дублировались
...
Рейтинг: 0 / 0
Как найти обьект, в двух одинаковых коллекциях
    #39141725
Azarnoy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
maytonAzarnoy, на стороне БД эта задача решается примерно так:

Код: java
1.
SQL> SELECT elem FROM NUMS2 WHERE elem not in (SELECT elem from NUMS);



На стороне java эта задача решается аж 10 способами. Но их выбор зависит от прочих нюансов
типа

1) Можно или нельзя менять содержимое коллекций
2) Будет только 1 элемент или их больше
3) Ключ всегда Integer (можем юзать биткарты в некоторых случаях) или нет?
4) Значения в коллекциях ВСЕГДА монотонны (Это можно использовать для оптимизации) или это просто твоя лень при
создании тестового примера?


Есть задания 1. Даны два списка целочисленных значений. Один содержит N элементов, второй N­1

элементов. Первый список содержит те же элементы, что и второй +1 элемент. Найти значение

элемента, который входит в первый список, но отсутствует во втором.

2. Даны два списка статей (статья хранит заголовок, дату публикации и список ключевых слов).

Найти одинаковые статьи, которые входят и в первый и во второй список. Найти статьи, у

которых совпадают заголовки и даты публикации.
...
Рейтинг: 0 / 0
Как найти обьект, в двух одинаковых коллекциях
    #39141727
Azarnoy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
как они будут решатся, не важно, я просто стараюсь разобратся в теме, но сам не могу, по этому прошу помощи, что б проанализировать возможные решения.
...
Рейтинг: 0 / 0
Как найти обьект, в двух одинаковых коллекциях
    #39141744
Azarnoy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И если можно, самые простые варианты, потому что я только учусь, и только начал коллекции, продвинутого еще не знаю.
...
Рейтинг: 0 / 0
Как найти обьект, в двух одинаковых коллекциях
    #39141787
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Azarnoy,

Эккель - Философия Java страница 414 Вспомогательный класс Set. Глава Параметризация.
...
Рейтинг: 0 / 0
Как найти обьект, в двух одинаковых коллекциях
    #39141814
Фотография Valentin Kolesnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Azarnoy,

Можно попробовать библиотеку underscore-java. Пример метода:

Код: java
1.
2.
3.
 
$.difference(asList(1, 2, 3, 4, 5), asList(5, 2, 10));
=> [1, 3, 4]
...
Рейтинг: 0 / 0
Как найти обьект, в двух одинаковых коллекциях
    #39141820
Фотография Valentin Kolesnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ещё есть метод xor в модуле underscore-lodash.

Пример с кодом для метода xor.

https://github.com/javadev/underscore-java/blob/master/examples/src/main/java/com/github/underscore/examples/Xor.java

С уважением, Валентин
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Как найти обьект, в двух одинаковых коллекциях
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]