Seskupování dat (Visual Basic)
Seskupení odkazuje na operaci vkládání dat do skupin tak, aby prvky v každé skupině sdílely společný atribut.
Následující obrázek ukazuje výsledky seskupení posloupnosti znaků. Klíč pro každou skupinu je znak.
Standardní metody operátoru dotazu, které seskupují datové prvky, jsou uvedeny v následující části.
Metody
Název metody | Popis | Syntaxe výrazů dotazu jazyka Visual Basic | Další informace |
---|---|---|---|
GroupBy | Seskupuje prvky, které sdílejí společný atribut. Každá skupina je reprezentována objektem IGrouping<TKey,TElement> . | Group … By … Into … |
Enumerable.GroupBy Queryable.GroupBy |
ToLookup | Vloží prvky do slovníku Lookup<TKey,TElement> 1:N na základě funkce selektoru klíče. | Nevztahuje se. | Enumerable.ToLookup |
Příklad syntaxe výrazu dotazu
Následující příklad kódu používá klauzuli Group By
k seskupení celých čísel v seznamu podle toho, zda jsou sudé nebo liché.
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
Viz také
Spolupracujte s námi na GitHubu
Zdroj tohoto obsahu najdete na GitHubu, kde můžete také vytvářet a kontrolovat problémy a žádosti o přijetí změn. Další informace najdete v našem průvodci pro přispěvatele.