Rubrik: Variablen/Strings · Array/ArrayList | VB-Versionen: VB2008 | 30.11.09 |
Doppelte Einträge aus einer Liste entfernen II Wie man schnell alle doppelten Einträge aus einer Liste entfernt, das erfahren Sie hier. Benötigt wird das .NET Framework 3.5 | ||
Autor: DaveS | Bewertung: | Views: 12.767 |
ohne Homepage | System: Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Bereits vor längerer Zeit haben wir Ihnen eine Funktion vorgestellt, mit der sich alle doppelten Einträge aus einer Liste entfernen lassen. Sofern Sie VB2008 verwenden bzw. das .NET Framework 3.5 geht das Ganze noch einfacher und schneller, wie nachfolgender Einzeiler zeigt.
Erstellen wir uns zunächst einmal eine Liste vom Typ String mit mehrfach vorkommenden Einträgen:
Dim MyList As New List(Of String) ' Liste mit 1000 Einträgen füllen For i As Integer = 1 To 1000 Dim n As Integer = Int(10 * Rnd() + 1) MyList.Add("Eintrag " & n.ToString) Next
Diese Liste zeigen wir in einer ListBox (ListBox1) an:
ListBox1.Items.Clear ListBox1.Items.AddRange(MyList.ToArray)
So... und jetzt möchten wir alle doppelten Einträge aus der Liste entfernen und das Ergebnis in einer zweiten ListBox (ListBox2) anzeigen:
' alle doppelten Einträge entfernen MyList = MyList.Distinct().ToList()
' bereinigte Liste in ListBox2 anzeigen ListBox2.Items.Clear ListBox2.Items.AddRange(MyList.ToArray)