Hallo,
ich habe 2 Liste und möchte diese vergleichen. Die Reihenfolge der Elemente soll egal sein.
Leider scheint "equals()" nur "true" zu sein, wenn auch die Reihenfolge der Elemente stimmt. Alternativ ist mir folgenden Möglichkeit eingefallen:
Könnte zu langsam sein? (Java- Ultras gefragt!
)
Ich vermute mal das ich nur auf dem Schlauch stehe. Gibt es eine (möglichst effiziente) Möglichkeit 2 Collections unäbhängig von ihrer Reihenflge auf ihre "Gleichheit" zu überprüfen?
ich habe 2 Liste und möchte diese vergleichen. Die Reihenfolge der Elemente soll egal sein.
Code:
List<Integer> list1 = new ArrayList<Integer>(Arrays.asList(new Integer[]{1,2,3,4,5}));
List<Integer> list2 = new ArrayList<Integer>(Arrays.asList(new Integer[]{5,1,3,2,4}));
boolean isEqual = list1.equals(list2);
Leider scheint "equals()" nur "true" zu sein, wenn auch die Reihenfolge der Elemente stimmt. Alternativ ist mir folgenden Möglichkeit eingefallen:
Code:
boolean isEqual2 = (list1.size() == list2.size()) && list1.containsAll(list2);
Könnte zu langsam sein? (Java- Ultras gefragt!

Ich vermute mal das ich nur auf dem Schlauch stehe. Gibt es eine (möglichst effiziente) Möglichkeit 2 Collections unäbhängig von ihrer Reihenflge auf ihre "Gleichheit" zu überprüfen?