So entfernen Sie allgemeine Werte aus zwei Array-Listen [geschlossen]

7

Wie können wir gemeinsame Werte aus zwei ArrayList entfernen? Nehmen wir an, ich habe zwei Arraylists, wie unten gezeigt.

%Vor%

Ich möchte das Ergebnis als

haben %Vor%

Könnte mir bitte jemand helfen?

    
Gautam 22.03.2013, 16:33
quelle

4 Antworten

28

Hier ist ein Algorithmus, dem Sie folgen könnten, um die Aufgabe zu erfüllen:

  • Konstruiere eine Vereinigung der zwei Arrays
  • Konstruiere den Schnittpunkt der beiden Arrays
  • Subtrahieren Sie die Schnittmenge von der Vereinigung, um Ihr Ergebnis zu erhalten

Java-Sammlungen unterstützen addAll , removeAll und retainAll . Verwenden Sie addAll zum Erstellen von Unionen, retainAll zum Erstellen von Überschneidungen und removeAll zum Subtrahieren, wie folgt :

%Vor%     
dasblinkenlight 22.03.2013, 16:40
quelle
13

Sie fragen eigentlich nach dem Symmetrischen Unterschied .

%Vor%

Drucke:

%Vor%     
OldCurmudgeon 22.03.2013 17:02
quelle
4

Sie können etwas wie folgt verwenden:

%Vor%

Ich habe gerade zwei ArrayLists gefüllt, wie Sie sie in Ihrem Post beschrieben haben, und ich habe beide nach verschiedenen Elementen durchsucht; Wenn solche Elemente gefunden wurden, füge ich sie zur finalResult ArrayList hinzu.

Ich hoffe, es wird dir helfen:)

    
Survivor 22.03.2013 17:02
quelle
0
%Vor%     
Khaled.K 22.03.2013 16:41
quelle

Tags und Links