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]

ASP.NET 2.0 und 3.5

Dieser Kurs vermittelt Ihnen alle Erweiterungen von Microsoft ASP.NET 2.0. Zu diesen zählen u. a. Data Bindung, Master Pages, und Security.

Visual Studio Team Foundation Server 2017/2015 (TFS) - Komplett 

/// <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!