Gegevens groeperen (Visual Basic)
Groeperen verwijst naar de werking van het indelen van gegevens in groepen, zodat de elementen in elke groep een gemeenschappelijk kenmerk delen.
In de volgende afbeelding ziet u de resultaten van het groeperen van een reeks tekens. De sleutel voor elke groep is het teken.
De standaardqueryoperatormethoden waarmee gegevenselementen worden gegroepeerd, worden weergegeven in de volgende sectie.
Methoden
Methodenaam | Beschrijving | Syntaxis van Visual Basic-queryexpressie | Meer informatie |
---|---|---|---|
GroupBy | Hiermee worden elementen gegroepeerd die een gemeenschappelijk kenmerk delen. Elke groep wordt vertegenwoordigd door een IGrouping<TKey,TElement> object. | Group … By … Into … |
Enumerable.GroupBy Queryable.GroupBy |
ToLookup | Voegt elementen in een Lookup<TKey,TElement> (een-op-veel-woordenlijst) in op basis van een sleutelkiezerfunctie. | Niet van toepassing. | Enumerable.ToLookup |
Voorbeeld van syntaxis van queryexpressie
In het volgende codevoorbeeld wordt de Group By
component gebruikt om gehele getallen in een lijst te groeperen op basis van of ze even of oneven zijn.
Dim numbers As New System.Collections.Generic.List(Of Integer)(
New Integer() {35, 44, 200, 84, 3987, 4, 199, 329, 446, 208})
Dim query = From number In numbers
Group By Remainder = (number Mod 2) Into Group
Dim sb As New System.Text.StringBuilder()
For Each group In query
sb.AppendLine(If(group.Remainder = 0, vbCrLf & "Even numbers:", vbCrLf & "Odd numbers:"))
For Each num In group.Group
sb.AppendLine(num)
Next
Next
' Display the results.
MsgBox(sb.ToString())
' This code produces the following output:
' Odd numbers:
' 35
' 3987
' 199
' 329
' Even numbers:
' 44
' 200
' 84
' 4
' 446
' 208
Zie ook
Werk met ons samen op GitHub
De bron voor deze inhoud vindt u op GitHub, waar u ook problemen en pull-aanvragen kunt maken en bekijken. Raadpleeg onze gids voor inzenders voor meer informatie.