Duplikate aus Liste entfernen in C#
-
Entfernen von Duplikaten aus der Liste mit der Klasse
HashSet
inC#
-
Entfernen von Duplikaten aus der Liste mit der LINQ-Methode in
C#
In diesem Tutorial werden die Methoden zum Entfernen doppelter Elemente aus einer Liste in C# vorgestellt.
Entfernen von Duplikaten aus der Liste mit der Klasse HashSet
in C#
Die HashSet
-Klasse wird verwendet, um eine Menge in C# zu erstellen. Eine Menge ist eine bekannte, ungeordnete Sammlung unterschiedlicher Objekte. Dies bedeutet, dass die Elemente einer Menge ungeordnet sind und sich nicht wiederholen. Wir können sich wiederholende Elemente aus einer Liste entfernen, indem wir die Liste in einem HashSet
speichern und dieses HashSet
dann mit der Funktion ToList()
von LINQ wieder in eine Liste konvertieren. Das folgende Codebeispiel zeigt, wie doppelte Elemente mit der Klasse HashSet
in C# aus einer Liste entfernt werden.
using System;
using System.Collections.Generic;
using System.Linq;
namespace remove_duplicates_from_list {
class Program {
static void displayList(List<int> list) {
foreach (var item in list) {
Console.WriteLine(item);
}
}
static void Main(string[] args) {
List<int> listWithDuplicates = new List<int> { 1, 2, 1, 2, 3, 4, 5 };
HashSet<int> hashWithoutDuplicates = new HashSet<int>(listWithDuplicates);
List<int> listWithoutDuplicates = hashWithoutDuplicates.ToList();
displayList(listWithoutDuplicates);
}
}
}
Ausgabe:
1
2
3
4
5
Wir haben die Liste der Ganzzahlen mit den sich wiederholenden Werten listWithDuplicates
im obigen Code deklariert und initialisiert. Anschließend haben wir die Liste in die Menge hasWithoutDuplicates
konvertiert, indem wir die Liste im Konstruktor der Klasse HashSet
übergeben haben. Anschließend haben wir die Menge mit der LINQ-Methode ToList()
wieder in die Liste der Ganzzahlen listWithoutDuplicates
konvertiert. Am Ende haben wir die Elemente in der Liste listWithoutDuplicates
angezeigt.
Entfernen von Duplikaten aus der Liste mit der LINQ-Methode in C#
Der LINQ integriert die Abfragefunktionalität in Datenstrukturen in C#. Mit der Funktion Distinct()
des LINQ werden eindeutige Werte aus einer Datenstruktur in C# ausgewählt. Die Funktion ToList()
des LINQ konvertiert eine Sammlung von Elementen in eine Liste in C#. Mit der Funktion Distinct()
können Sie eindeutige, sich nicht wiederholende Werte aus der Liste auswählen und die ausgewählten Werte dann mit der Funktion ToList()
von LINQ wieder in eine Liste konvertieren. Das folgende Codebeispiel zeigt, wie Sie mit der LINQ-Methode in C# doppelte Werte aus einer Liste entfernen.
using System;
using System.Collections.Generic;
using System.Linq;
namespace remove_duplicates_from_list {
class Program {
static void displayList(List<int> list) {
foreach (var item in list) {
Console.WriteLine(item);
}
}
static void Main(string[] args) {
List<int> listWithDuplicates = new List<int> { 1, 2, 1, 2, 3, 4, 5 };
List<int> listWithoutDuplicates = listWithDuplicates.Distinct().ToList();
displayList(listWithoutDuplicates);
}
}
}
Ausgabe:
1
2
3
4
5
Wir haben die Liste der Ganzzahlen mit den sich wiederholenden Werten listWithDuplicates
im obigen Code deklariert und initialisiert. Wir haben dann mit der Funktion Distinct()
von LINQ eindeutige Werte aus dieser Liste ausgewählt. Anschließend haben wir die ausgewählten Werte mit der LINQ-Funktion ToList()
in die Liste der Ganzzahlen listWithoutDuplicates
konvertiert.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn