22
Июл
2021

Как один список пополнить недостающими элементами другого?

Есть первый список, который на выходе выдаёт [26]

Есть второй [26, 26, 25, 25, 70, 70]

Как мне их соединить, что бы на выходе получить первый список таким [26, 25, 70]?

Если первый будет выглядeть так [26, 58, 1]

А второй [26, 26, 87, 87, 9, 9, 58, 58, 99, 99, 1, 1]

То на выходе должно быть [26, 87, 9, 58, 99, 1]

Это, конечно же, не работает:

List<Long> result = new ArrayList<>();
for (Long a : list1){
    for (Long b : list2){
        if (!a.equals(b)){
            result.add(a);
        }
    }
}

Получаю так:

первый [26]

второй [70, 25, 26, 70, 25, 26]

result [70, 25, 70, 25]

А хотелось бы [70, 25, 26]

И порядок в последнем, я думаю не обязателен, ибо это id для поиска по базе. Если можно с соблюдением порядка, тоже гуд.

Источник: https://ru.stackoverflow.com/questions/1307759/%D0%9A%D0%B0%D0%BA-%D0%BE%D0%B4%D0%B8%D0%BD-%D1%81%D0%BF%D0%B8%D1%81%D0%BE%D0%BA-%D0%BF%D0%BE%D0%BF%D0%BE%D0%BB%D0%BD%D0%B8%D1%82%D1%8C-%D0%BD%D0%B5%D0%B4%D0%BE%D1%81%D1%82%D0%B0%D1%8E%D1%89%D0%B8%D0%BC%D0%B8-%D1%8D%D0%BB%D0%B5%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D0%BC%D0%B8-%D0%B4%D1%80%D1%83%D0%B3%D0%BE%D0%B3%D0%BE

Тебе может это понравится...

Добавить комментарий