Feedback

C# - Comparing two lists

Veröffentlicht von am 07.11.2012
(0 Bewertungen)
Überprüft, ob der Inhalt zweier Listen gleich ist anhand der Hashcodes der Elemente
GFU-Schulungen  [Anzeige]

C# Grundlagen

Die Schulung vermittelt Ihnen die Grundlagen von C# in der Arbeit mit Datentypen sowie bei Klassenbibliotheken. Sie lernen, mit Variablen umzugehen und deren verschiedene Formen zu konvertieren. 

VB.NET Aufbau

Sie verfügen nach der Schulung über fundierte Kenntnisse in der Arbeit mit objektorientierten Modellen in VB.NET und können wiederverwendbare Komponenten eigenständig erzeugen.

/// <summary>
        /// Prüft zwei Ausflistungen auf Übereinstimmung.
        /// </summary>
        /// <param name="resultIfEmpty">Was soll zurückgegeben werden, wenn beide Listen leer sind?</param>
        /// <returns></returns>
        private bool HasDifferences<T>(ICollection<T> listA, ICollection<T> listB, bool resultIfEmpty)
        {
            if (!listA.Any() && !listB.Any()) return resultIfEmpty;
            
            // Unterschiede, wenn ...
            // Anzahl unterschiedlich
            // ODER
            // (Es gibt Liste A Elemente, die nicht in Liste B enthalten sind
            // ODER es gibt List B Elemente, die nicht in Liste A enthalten sind)

            return listA.Count != listB.Count || (listA.Any(iA => !listB.Contains(iA)) || listB.Any(iB => !listA.Contains(iB)));
        }
Abgelegt unter compare, lists, vergleich, listen.

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!