Create Hashtable class from another dictionary : HashTable « Data Structure « VB.Net






Create Hashtable class from another dictionary

 

Imports System
Imports System.Collections
Imports System.Globalization

Public Class myCultureComparer
    Implements IEqualityComparer

    Dim myComparer As CaseInsensitiveComparer

    Public Sub New()
        myComparer = CaseInsensitiveComparer.DefaultInvariant
    End Sub

    Public Sub New(ByVal myCulture As CultureInfo)
        myComparer = New CaseInsensitiveComparer(myCulture)
    End Sub

    Public Function Equals1(ByVal x As Object, ByVal y As Object) _
        As Boolean Implements IEqualityComparer.Equals

        If (myComparer.Compare(x, y) = 0) Then
            Return True
        Else
            Return False
        End If
    End Function

    Public Function GetHashCode1(ByVal obj As Object) _
        As Integer Implements IEqualityComparer.GetHashCode
        Return obj.ToString().ToLower().GetHashCode()
    End Function
End Class

Public Class SamplesHashtable   
   Public Shared Sub Main()
      Dim mySL As New SortedList()
      mySL.Add("FIRST", "Hello")
      mySL.Add("SECOND", "World")
      mySL.Add("THIRD", "!")

      Dim myHT1 As New Hashtable(mySL)
      Dim myHT2 As New Hashtable(mySL, New myCultureComparer())

      Dim myCul As New CultureInfo("tr-TR")
      Dim myHT3 As New Hashtable(mySL, New myCultureComparer(myCul))

      Console.WriteLine("first is in myHT1: {0}", myHT1.ContainsKey("first"))
      Console.WriteLine("first is in myHT2: {0}", myHT2.ContainsKey("first"))
      Console.WriteLine("first is in myHT3: {0}", myHT3.ContainsKey("first"))
   End Sub 
End Class

   
  








Related examples in the same category

1.Hashtable: add,get,count, Dictionary Key and value EnumeratorHashtable: add,get,count, Dictionary Key and value Enumerator
2.Store Environment Variables into a Hash tableStore Environment Variables into a Hash table
3.Create a Hashtable using the default hash code provider and the default comparer.
4.Create a Hashtable using a case-insensitive code provider and a case-insensitive comparer
5.Create a Hashtable using a case-insensitive code provider and a case-insensitive comparer
6.Create a Hashtable using a case-insensitive code provider and a case-insensitive comparer based on the Turkish culture (tr-TR)
7.Hashtable.Add Method adds an element with the specified key and value into the Hashtable.
8.Hashtable.Clear Method removes all elements from the Hashtable.
9.Hashtable.Contains Method Determines whether the Hashtable contains a specific key.
10.Hashtable.CopyTo Method copies the Hashtable elements to a one-dimensional Array instance at the specified index.
11.Hashtable.GetEnumerator Method returns an IDictionaryEnumerator that iterates through the Hashtable.
12.Displays the keys and values of the Hashtable using foreach statement
13.Hashtable.IsSynchronized Property gets a value indicating whether access to the Hashtable is synchronized (thread safe).
14.Hashtable.Remove Method removes the element with the specified key from the Hashtable.