Может кто-нибудь объяснить, как Union
работает в LINQ?
Сообщается, что он объединяет две последовательности и удаляет дубликаты.
Но могу ли я как-то настроить поведение удаления дубликатов - позвольте ' s скажем, если я хочу использовать элемент из второй последовательности
в случае дублирования или из первой последовательности
.
Или даже если я хочу каким-то образом объединить эти значения в итоговая последовательность?
Как это должно быть реализовано?
Думаю, я неправильно описал проблему, допустим, у нас есть какое-то значение:
class Value {
String name
Int whatever;
}
и используемый компаратор выполняет x.name = = y.name
check.
И предположим, что иногда я знаю, что мне следует взять элемент из второй последовательности, потому что это независимо от того, что поле
новее / лучше, чем безотносительно
поле первой последовательности.
В любом случае, я бы использовал вариант методов sequence1.Union (sequence2)
или sequence2.Union (sequence1)
.
Спасибо.