Feedback

C# - Besteht Liste aus...? / Enthält Liste keine...?

Veröffentlicht von am 04.07.2013
(0 Bewertungen)
Manchmal ist es nötig, das man überprüfen muss, ob eine Auflistung nur aus den Elementen A, B und C besteht bzw. das diese Elemente eben nicht enthalten sind. Diese Methoden prüfen das. Näheres steht in der XML-Dokumentation.
Diese Methoden kann man auch für den Typ System.String einsetzen.

Hinweis: Die bereits existierenden Methoden Any und All machen praktisch das gleiche wie meine Methoden.
GFU-Schulungen  [Anzeige]

JavaScript für .NET-Entwickler

Sie sind .NET-Entwickler und nun stehen Sie vor der Aufgabe, JavaScript in Ihre Arbeit einzubinden. Die Schulung vermittelt Ihnen die JavaScript Grundlagen und die Funktionen der Scriptsprache. Sie wissen, wie objektorientierte Programmierung in JavaScript funktioniert und lernen abschließend Best Practicies Fälle kennen.

Visual Studio Team Foundation Server 2017/2015 (TFS) für Administratoren - Kompakt

Nach dieser Schulung beherrschen Sie die Grundlagen des TFS. Sie erledigen administrative Aufgaben schnell und sicher.

        /// <summary>
        /// Überprüft ob eine Auflistung aus Elementen einer anderen Auflistung besteht.
        /// </summary>
        /// <typeparam name="TSource">Der Typ, von dem die Elemente der Auflistungen sind.</typeparam>
        /// <param name="list">Die Liste, deren Elemnte geprüft werden sollen.</param>
        /// <param name="allowed">Die erlabuten Elemente.</param>
        /// <returns><c>True</c>, wenn die Liste nur Elemente der <paramref name="allowed"/>-Liste enthält. Andernfalls <c>False</c>.</returns>
        public static bool ContainsOnly<TSource>(this IEnumerable<TSource> list, IEnumerable<TSource> allowed)
        {
            foreach (TSource c in list)
                if (!allowed.Contains(c))
                    return false;
            return true;
        }
        /// <summary>
        /// Überprüft ob eine Auflistung keine Elemente einer anderen Auflistung besitzt.
        /// </summary>
        /// <typeparam name="TSource">Der Typ, von dem die Elemente der Auflistungen sind.</typeparam>
        /// <param name="list">Die Liste, deren Elemnte geprüft werden sollen.</param>
        /// <param name="prohibited">Die verbotenen Elemente.</param>
        /// <returns><c>True</c>, wenn die Liste keine Elemente der <paramref name="prohibited"/>-Liste enthält. Andernfalls <c>False</c>.</returns>
        public static bool ContainsNothing<TSource>(this IEnumerable<TSource> list, IEnumerable<TSource> prohibited)
        {
            foreach (TSource c in list)
                if (prohibited.Contains(c))
                    return false;
            return true;
        }

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!