Jeśli naprawdę potrzebujesz Set<String[]>
, nie ma na to łatwego i eleganckiego sposobu, AFAICT. Problem polega na tym, że tablice z jednej strony nie zastępują equals()
i hashCode()
. Z drugiej strony klasa HashSet
nie daje możliwości przekazania jakiejś "strategii" do niej, która zaimplementuje kod mieszający i obliczenia równości na zewnątrz (coś takiego jak Comparator
). Więc możesz rozważyć utworzenie TreeSet
z niestandardowym komparatorem. Niestety, nie znam żadnej implementacji komparatora tablicowego, więc najprawdopodobniej będziesz musiał napisać własną.
Jeśli jest w porządku, aby mieć Set<List<String>>
, można rozważyć porady w innych odpowiedziach.
Jest to prawdopodobnie najlepsze rozwiązanie. – Chase
niektóre zestawy nie używają równych i hashCode jak sortedset "..Arrays nie zastępują equals i hashCode, a więc Set będzie c .." powinien być HashSet zamiast zestawu – nachokk
@nachokk Dobry połów - dzięki. –