Ermitteln der verschiedenen Elemente zwischen zwei ArrayLists in Java

8

Wie kann ich das unterschiedliche Element zwischen 2 Array-Listen in Java kennen? Ich brauche das genaue Element nicht einen booleschen Wert, der mit removeAll() abgerufen werden kann.

    
zhrani 17.05.2011, 00:24
quelle

6 Antworten

10

Verwenden Sie Apache Commons-Sammlungen ( javadoc ):

%Vor%

Siehe auch: Effective Java, 2. Ausgabe , Punkt 47: Kennen und verwenden Sie die Bibliotheken (Der Autor erwähnt nur die eingebauten Bibliotheken des JDK, aber ich denke die Argumentation könnte auch für andere Bibliotheken gelten.)

    
palacsint 05.10.2013 21:03
quelle
10

Wenn ich Ihre Frage richtig verstanden habe, dann sollte die folgende Methode nonOverLap im folgenden Code Sie dazu bringen:

%Vor%     
anubhava 17.05.2011 01:00
quelle
3

Es hängt davon ab, was Sie überprüfen möchten.

  1. Wenn Sie alle eindeutigen Elemente für beide Listen erhalten möchten (dh die Summe aller Elemente, die für die erste Liste eindeutig sind, und alle Elemente, die für die zweite Liste eindeutig sind), auch bekannt als symmetrischer Unterschied Sie können wie oben erwähnt disjunction Methode von Apache Commons Collections 4.0 :

    %Vor%
  2. Wenn Sie alle eindeutigen Elemente nur aus einer Liste erhalten möchten (dh Elemente, die nur in einer Liste existieren, aber nicht in der anderen existieren), auch bekannt als relative Ergänzung Sie können von dieser Liste die andere Methode subtrahieren indem Sie subtrahieren von Apache Commons Collections 4.0 :

    %Vor%
contrapost 08.12.2017 13:04
quelle
1
%Vor%

Am Ende der for-Schleifen-Elemente in Tabelle mit Wert = 0 sind die verschiedenen.

    
Enrique 17.05.2011 00:33
quelle
1
%Vor%     
rakesh 27.01.2013 14:08
quelle
0

Rufen Sie die Methode ReturnArrayListDiffElements auf, die zwei Array-Listen übergibt. Eine Array-Liste, die den Unterschied zwischen zwei übergebenen Array-Listen darstellt, wird zurückgegeben

%Vor%     
Saravanan Thirumurugan 09.11.2015 14:24
quelle

Tags und Links