Mega Code Archive

 
Categories / VB.Net Tutorial / Class Module
 

Structure implements interface

Imports System Module MyModule   Sub Main()     Dim salaries(4) As Salary     salaries(0) = New Salary(9)     salaries(1) = New Salary(4)     salaries(2) = New Salary(8)     salaries(3) = salaries(2)     salaries(4) = New Salary(6)     Console.WriteLine("Unsorted array:")     Dim salary As Salary     For Each salary In salaries       Console.WriteLine("{0}", salary)     Next     Array.Sort(salaries)     Console.WriteLine(vbCrLf & "Sorted array:")     For Each salary In salaries       Console.WriteLine("{0}", salary)     Next   End Sub End Module Structure Salary   Implements IComparable   Private value As Integer   Public Sub New(ByVal amount As Double)     Me.value = CInt(amount * 100)   End Sub   Public Function CompareTo(ByVal other As Object) As Integer Implements IComparable.CompareTo     Dim m2 As Salary = CType(other, Salary)     If Me.value < m2.value Then       Return -1     ElseIf Me.value = m2.value Then       Return 0     Else       Return +1     End If   End Function   Public Overrides Function ToString() As String     Return Me.value   End Function End Structure Unsorted array: 900 400 800 600 Sorted array: 400 600 800 900