Sort Delegate : Delegate « Language Basics « 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 » Language Basics » DelegateScreenshots 
Sort Delegate
Sort Delegate
 
Imports System

Public Class MainClass
   Shared Dim mBubbleSort As New CDelegateBubbleSort()

   Shared Dim mElementArray As Integer() = New Integer(9) {}
    
    Shared Sub Main(ByVal args As String())
      Dim randomNumber As Random = New Random()
      Dim As Integer

      Console.WriteLine("Init Value:")
      ' create String with 10 random numbers
      For i = To mElementArray.GetUpperBound(0)
         mElementArray(i= randomNumber.Next(100)
         Console.WriteLinemElementArray(i) )
      Next

      mBubbleSort.SortArray(mElementArray, AddressOf SortAscending)

      Console.WriteLine("Sort Ascending")

      For i = To mElementArray.GetUpperBound(0)
         Console.WriteLinemElementArray(i) )
      Next

      mBubbleSort.SortArray(mElementArray, AddressOf SortDescending)
      Console.WriteLine("Sort Descending")

      For i = To mElementArray.GetUpperBound(0)
         Console.WriteLinemElementArray(i) )
      Next

    End Sub


   ' delegate implementation sorts in asending order
   Shared Private Function SortAscending(ByVal element1 As Integer, _
      ByVal element2 As IntegerAs Boolean

      Return element1 > element2
   End Function ' SortAscending

   ' delegate implementation sorts in descending order
   Shared Private Function SortDescending(ByVal element1 As Integer, _
      ByVal element2 As IntegerAs Boolean

      Return element1 < element2
   End Function ' SortDescending

End Class


Public Class CDelegateBubbleSort
   Public Delegate Function Comparator_
      ByVal element1 As Integer, _
      ByVal element2 As IntegerAs Boolean

   Public Sub SortArray(ByVal array As Integer(), _
      ByVal Compare As Comparator)
      Dim i, pass As Integer
      For pass = To array.GetUpperBound(0)
         For i = To array.GetUpperBound(01
            If Compare(array(i), array(i + 1)) Then
               Swap(array(i), array(i + 1))
            End If
         Next
      Next
   End Sub
   Private Sub Swap(ByRef firstElement As Integer, _
      ByRef secondElement As Integer)
      Dim hold As Integer
      hold = firstElement
      firstElement = secondElement
      secondElement = hold
   End Sub ' Swap

End Class
           
         
  
Related examples in the same category
1.Delegate with and without parametersDelegate with and without parameters
2.Two ways to init a DelegateTwo ways to init a Delegate
3.Multicast DelegateMulticast Delegate
4.Use Delegate to implement custome sortUse Delegate to implement custome sort
5.Register Delegates and call themRegister Delegates and call them
6.Simple Delegate DemoSimple Delegate Demo
7.Function Delegation DemoFunction Delegation Demo
8.Function Delegate: output stringFunction Delegate: output string
9.Delegate Demo for a Simple ClassDelegate Demo for a Simple Class
10.Delegate Syntax
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.