Heim >Backend-Entwicklung >C++ >Wie kann ich mehrere Listen in C# effizient kombinieren und dabei Duplikate verarbeiten und die Originallisten beibehalten?
Müheloses Kombinieren mehrerer Listen
Bei Programmieraufgaben kommt es häufig vor, dass mehrere Listen zusammengeführt werden müssen. Stellen Sie sich das Szenario vor, in dem Sie zwei Listen mit Zeichenfolgen haben und diese effizient kombinieren möchten, während Sie die ursprüngliche Reihenfolge beibehalten und Duplikate eliminieren.
Lösung
Glücklicherweise das .NET-Framework bietet für diese Aufgabe eine unkomplizierte Lösung. Hier ist der empfohlene Ansatz:
List<string> a = new List<string>(); List<string> b = new List<string>(); a.AddRange(b);
Durch die Verwendung der AddRange-Methode können wir die Elemente von Liste b mühelos an das Ende von Liste a anhängen. Diese Methode entfernt jedoch keine Duplikate.
Originallisten beibehalten
Wenn eine Änderung der Originallisten unerwünscht ist, können wir die Concat-Methode anwenden:
var newList = a.Concat(b);
Dieser Vorgang erstellt eine neue IEnumerable-Sammlung, die die Elemente beider Listen kombiniert, ohne die Originale zu ändern. Es ist wichtig zu beachten, dass die Concat-Methode ein IEnumerable zurückgibt, das nur die Elemente der Liste b enthält, wenn Liste a null ist.
Beispielverwendung
Betrachten Sie das folgende Beispiel :
List<string> colors1 = new List<string> { "Red", "Blue", "Yellow" }; List<string> colors2 = new List<string> { "Orange", "Pink", "Green" }; Console.WriteLine("Original Lists:"); Console.WriteLine(string.Join(",", colors1)); Console.WriteLine(string.Join(",", colors2)); colors1.AddRange(colors2); Console.WriteLine("Combined List with Duplicates:"); Console.WriteLine(string.Join(",", colors1)); var colors3 = colors1.Concat(colors2); Console.WriteLine("Combined List without Duplicates:"); Console.WriteLine(string.Join(",", colors3));
Ausgabe:
Original Lists: Red,Blue,Yellow Orange,Pink,Green Combined List with Duplicates: Red,Blue,Yellow,Orange,Pink,Green,Orange,Pink,Green Combined List without Duplicates: Red,Blue,Yellow,Orange,Pink,Green
Der obige Code demonstriert das Verwendung der AddRange- und Concat-Methoden zum Kombinieren von Listen mit und ohne Duplikate.
Das obige ist der detaillierte Inhalt vonWie kann ich mehrere Listen in C# effizient kombinieren und dabei Duplikate verarbeiten und die Originallisten beibehalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!