Dela via


Gruppera data (Visual Basic)

Gruppering syftar på åtgärden att placera data i grupper så att elementen i varje grupp delar ett gemensamt attribut.

Följande bild visar resultatet av att gruppera en sekvens med tecken. Nyckeln för varje grupp är tecknet.

Diagram that shows a LINQ Grouping operation.

Standardmetoderna för frågeoperatorer som grupperar dataelement visas i följande avsnitt.

Metoder

Metodnamn beskrivning Syntax för Visual Basic-frågeuttryck Mer information
GroupBy Grupperar element som delar ett gemensamt attribut. Varje grupp representeras av ett IGrouping<TKey,TElement> objekt. Group … By … Into … Enumerable.GroupBy

Queryable.GroupBy
ToLookup Infogar element i en Lookup<TKey,TElement> (en en-till-många-ordlista) baserat på en nyckelväljare. Ej tillämpbart. Enumerable.ToLookup

Exempel på frågeuttryckssyntax

I följande kodexempel används Group By -satsen för att gruppera heltal i en lista beroende på om de är jämna eller udda.

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  

Se även