IComparer Demo: custom sorting : IComparer « Data Structure « VB.Net

Home
VB.Net
1.2D
2.Application
3.Class
4.Data Structure
5.Data Types
6.Database ADO.net
7.Development
8.Event
9.File Directory
10.Generics
11.GUI
12.Language Basics
13.LINQ
14.Network Remote
15.Security
16.Thread
17.Windows Presentation Foundation
18.Windows System
19.XML
20.XML LINQ
VB.Net Tutorial
VB.Net by API
VB.Net » Data Structure » IComparerScreenshots 
IComparer Demo: custom sorting
IComparer Demo: custom sorting

Imports System
Imports System.Collections

Public Class MainClass
    
    Shared Sub Main(ByVal args As String())
        Dim students(4As Student
        students(0= New Student("A""E")
        students(1= New Student("B""D")
        students(2= New Student("C""C")
        students(3= New Student("D""B")
        students(4= New Student("E""A")

        ' Make a comparer.
        Dim student_comparer As New StudentComparer

        ' Sort.
        Array.Sort(students, student_comparer)

        ' Display the results.
        Dim txt As String = ""
        For i As Integer = To students.GetUpperBound(0)
            Console.WriteLinestudents(i).ToString() )
        Next i
    End Sub

End Class
  
Public Class Student
    Public FirstName As String
    Public LastName As String

    Public Sub New(ByVal first_name As String, ByVal last_name As String)
        FirstName = first_name
        LastName = last_name
    End Sub

    Public Overrides Function ToString() As String
        Return LastName & ", " & FirstName
    End Function
End Class

Public Class StudentComparer
    Implements IComparer

    Public Function Compare(ByVal x As Object, ByVal y As ObjectAs Integer _
     Implements System.Collections.IComparer.Compare
        Dim student1 As Student = DirectCast(x, Student)
        Dim student2 As Student = DirectCast(y, Student)

        Return String.Compare(student1.ToString, student2.ToString)
    End Function
End Class

           
       
Related examples in the same category
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.