У меня есть ArrayList of Sets, я хотел бы найти уникальные множества среди этого ArrayList of Sets.Найти уникальные наборы в ArrayList наборов в Java
Пожалуйста, помогите мне в этом.
У меня есть ArrayList of Sets, я хотел бы найти уникальные множества среди этого ArrayList of Sets.Найти уникальные наборы в ArrayList наборов в Java
Пожалуйста, помогите мне в этом.
Позвоните нам по телефону ArrayList<Set<T>>
al
. Вы можете поместить его элементы в Set
:
Set<Set<T>> unique = new HashSet<Set<T>>(al);
Элементы unique
даст вам уникальные наборы.
P.S. В приведенном выше примере T
- это какой-то тип (вы не сказали нам, что это такое, поэтому я использовал общее имя).
Это даст ему ровно одну отличную копию каждого набора в его списке, другими словами, он отменит его список. Я думаю, он хочет только тех наборов, которые уже уникальны, отбрасывая все экземпляры наборов с дубликатами. – Paul
@Paul: Пока вы не упомянули об этом, ваша интерпретация вопроса мне не пришла в голову. Я буду ждать, пока ОП разъяснит их вопрос. – NPE
@oksayt Хороший вопрос! :-) –
Что у вас три ... о, неважно :) Как вы определяете уникальность множеств? У каждого из них есть уникальное количество элементов или вы считаете, что два набора равны, если они содержат одни и те же объекты? – Paul
Ваш вопрос немного не определен, как я понял, когда я прочитал ответ @ aix. Вы хотите, чтобы все уникальные наборы, как и в каждом наборе, которые появляются в ArrayList, без дубликатов? Ответ aix работает для этого. Или вы хотите, чтобы каждый набор отображался только один раз? Просто проверяйте, так как я чувствую, что, если я могу запутаться в вашем значении, другие потенциальные ответы могут быть не такими, какими вы будете. – blahman