Grupowanie danych (Visual Basic)
Grupowanie odnosi się do operacji umieszczania danych w grupach, aby elementy w każdej grupie współdzieliły wspólny atrybut.
Poniższa ilustracja przedstawia wyniki grupowania sekwencji znaków. Kluczem dla każdej grupy jest znak.
Standardowe metody operatorów zapytań, które grupują elementy danych, są wymienione w poniższej sekcji.
Metody
Nazwa metody | opis | Składnia wyrażeń zapytań języka Visual Basic | Więcej informacji |
---|---|---|---|
GroupBy | Grupy elementów, które mają wspólny atrybut. Każda grupa jest reprezentowana przez IGrouping<TKey,TElement> obiekt. | Group … By … Into … |
Enumerable.GroupBy Queryable.GroupBy |
Tolookup | Wstawia elementy do słownika Lookup<TKey,TElement> (jeden do wielu) na podstawie funkcji selektora kluczy. | Nie dotyczy. | Enumerable.ToLookup |
Przykład składni wyrażenia zapytania
Poniższy przykład kodu używa klauzuli Group By
do grupowania liczb całkowitych na liście zgodnie z tym, czy są parzyste, czy dziwne.
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
Zobacz też
Współpracuj z nami w serwisie GitHub
Źródło tej zawartości można znaleźć w witrynie GitHub, gdzie można również tworzyć i przeglądać problemy i żądania ściągnięcia. Więcej informacji znajdziesz w naszym przewodniku dla współtwórców.