Verileri Gruplandırma (Visual Basic)

Gruplandırma, her gruptaki öğelerin ortak bir özniteliği paylaşması için verileri gruplara yerleştirme işlemini ifade eder.

Aşağıdaki çizimde, bir karakter dizisini gruplandırma sonuçları gösterilmektedir. Her grubun anahtarı karakterdir.

LINQ Gruplandırma işlemini gösteren diyagram.

Veri öğelerini gruplandıran standart sorgu işleci yöntemleri aşağıdaki bölümde listelenmiştir.

Yöntemler

Yöntem Adı Açıklama Visual Basic Sorgu İfadesi Dizilimi Daha Fazla Bilgi
Grupla Ortak bir özniteliği paylaşan öğeleri gruplandırma. Her grup bir IGrouping<TKey,TElement> nesneyle temsil edilir. Group … By … Into … Enumerable.GroupBy

Queryable.GroupBy
ToLookup Bir anahtar seçici işlevine göre öğeleri bire Lookup<TKey,TElement> çok sözlüğe ekler. Uygulanamaz. Enumerable.ToLookup

Sorgu İfadesi Söz Dizimi Örneği

Aşağıdaki kod örneği, listedeki tamsayıları çift mi yoksa tek mi olduklarına göre gruplandırmak için yan tümcesini kullanır Group By .

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

Ayrıca bakınız