Bagikan melalui


Mengurutkan Data (Visual Basic)

Operasi pengurutan mengurutkan elemen urutan berdasarkan satu atau beberapa atribut. Kriteria pengurutan pertama melakukan pengurutan utama pada elemen. Dengan menentukan kriteria pengurutan kedua, Anda dapat mengurutkan elemen dalam setiap grup pengurutan utama.

Ilustrasi berikut menunjukkan hasil operasi pengurutan alfabet pada urutan karakter.

Grafik yang memperlihatkan operasi pengurutan alfabet.

Metode operator kueri standar yang mengurutkan data dicantumkan di bagian berikut.

Metode

Nama Metode Deskripsi Sintaks Ekspresi Kueri Visual Basic Informasi Selengkapnya
UrutkanBerdasarkan Mengurutkan nilai dalam urutan naik. Order By Enumerable.OrderBy

Queryable.OrderBy
OrderByDescending Mengurutkan nilai dalam urutan menurun. Order By … Descending Enumerable.OrderByDescending

Queryable.OrderByDescending
ThenBy Melakukan pengurutan sekunder dalam urutan naik. Order By …, … Enumerable.ThenBy

Queryable.ThenBy
KemudianDenganUrutanMenurun Melakukan pengurutan sekunder dalam urutan menurun. Order By …, … Descending Enumerable.ThenByDescending

Queryable.ThenByDescending
Membalikkan Membalikkan urutan elemen dalam kumpulan. Tidak dapat diterapkan. Enumerable.Reverse

Queryable.Reverse

Contoh Sintaks Ekspresi Kueri

Contoh Pengurutan Utama

Pengurutan Naik Utama

Contoh berikut menunjukkan cara menggunakan Order By klausa dalam kueri LINQ untuk mengurutkan string dalam array menurut panjang string, dalam urutan naik.

Dim words = {"the", "quick", "brown", "fox", "jumps"}

Dim sortQuery = From word In words
                Order By word.Length
                Select word

Dim sb As New System.Text.StringBuilder()
For Each str As String In sortQuery
    sb.AppendLine(str)
Next

' Display the results.
MsgBox(sb.ToString())

' This code produces the following output:

' the
' fox
' quick
' brown
' jumps

Pengurutan Menurun Utama

Contoh berikutnya menunjukkan cara menggunakan klausul Order By Descending dalam kueri LINQ untuk mengurutkan string berdasarkan huruf pertamanya, dalam urutan menurun.

Dim words = {"the", "quick", "brown", "fox", "jumps"}

Dim sortQuery = From word In words
                Order By word.Substring(0, 1) Descending
                Select word

Dim sb As New System.Text.StringBuilder()
For Each str As String In sortQuery
    sb.AppendLine(str)
Next

' Display the results.
MsgBox(sb.ToString())

' This code produces the following output:

' the
' quick
' jumps
' fox
' brown

Contoh Pengurutan Sekunder

Pengurutan Naik Sekunder

Contoh berikut menunjukkan cara menggunakan klausa Order By dalam kueri LINQ untuk melakukan pengurutan utama dan sekunder dari string dalam array. String diurutkan terutama berdasarkan panjang dan kemudian berdasarkan huruf pertama dari string, keduanya dalam urutan menaik.

Dim words = {"the", "quick", "brown", "fox", "jumps"}

Dim sortQuery = From word In words
                Order By word.Length, word.Substring(0, 1)
                Select word

Dim sb As New System.Text.StringBuilder()
For Each str As String In sortQuery
    sb.AppendLine(str)
Next

' Display the results.
MsgBox(sb.ToString())

' This code produces the following output:

' fox
' the
' brown
' jumps
' quick

Pengurutan Menurun Sekunder

Contoh berikutnya menunjukkan cara menggunakan klausul Order By Descending dalam kueri LINQ untuk melakukan pengurutan primer, dalam urutan naik, dan pengurutan sekunder, dalam urutan menurun. String diurutkan terutama berdasarkan panjang dan sekunder dengan huruf pertama string.

Dim words = {"the", "quick", "brown", "fox", "jumps"}

Dim sortQuery = From word In words
                Order By word.Length, word.Substring(0, 1) Descending
                Select word

Dim sb As New System.Text.StringBuilder()
For Each str As String In sortQuery
    sb.AppendLine(str)
Next

' Display the results.
MsgBox(sb.ToString())

' This code produces the following output:

' fox
' the
' quick
' jumps
' brown

Lihat juga