Vra

Ek hoef ontfout 'n paar ou kode wat 'n Hashtable gebruik om reaksie uit verskeie drade te stoor.

Ek het 'n manier om te gaan deur die hele Hashtable en druk beide sleutels en die data in die Hastable.

Hoe kan dit gedoen word?

Was dit nuttig?

Oplossing

foreach(string key in hashTable.Keys)
{
   Console.WriteLine(String.Format("{0}: {1}", key, hashTable[key]));
}

Ander wenke

Ek hou van:

foreach(DictionaryEntry entry in hashtable)
{
    Console.WriteLine(entry.Key + ":" + entry.Value);
}

   public static void PrintKeysAndValues( Hashtable myList )  {
      IDictionaryEnumerator myEnumerator = myList.GetEnumerator();
      Console.WriteLine( "\t-KEY-\t-VALUE-" );
      while ( myEnumerator.MoveNext() )
         Console.WriteLine("\t{0}:\t{1}", myEnumerator.Key, myEnumerator.Value);
      Console.WriteLine();
   }

uit: http: // msdn.microsoft.com/en-us/library/system.collections.hashtable(VS.71).aspx

Dit behoort te werk vir pretty much elke weergawe van die raamwerk ...

foreach (string HashKey in TargetHash.Keys)
{
   Console.WriteLine("Key: " + HashKey + " Value: " + TargetHash[HashKey]);
}

Die geheim is dat jy 'n lys / versameling van die sleutels (of die waardes) van 'n gegewe hash kan kry om deur middel van Itereer.

EDIT: Sjoe, jy probeer mooi jou kode 'n bietjie en die volgende ding ya weet daar 5 antwoorde ... 8 ^ D

Ek het ook bevind dat dit ook sal werk.

System.Collections.IDictionaryEnumerator enumerator = hashTable.GetEnumerator();

while (enumerator.MoveNext())
{
    string key = enumerator.Key.ToString();
    string value = enumerator.Value.ToString();

    Console.WriteLine(("Key = '{0}'; Value = '{0}'", key, value);
}

Dankie vir die hulp.

Gelisensieer onder: CC-BY-SA met toeskrywing
Nie verbonde aan StackOverflow
scroll top