7 Stimmen

Wie speichert man ein Schlüssel/Wert-Paar in C#(4.0)?

Ich möchte wissen, wie Key/Value Pair in C# 4.0 zu speichern?

Zum Beispiel, in Java HashTable o HashMap verwendet, um Schlüssel/Wert-Paare zu speichern. Aber wie ich es in C# tun?

26voto

Rudi Visser Punkte 20718

Sie können die Hashtable Klasse, oder eine Dictionary<TKey, TValue> wenn Sie die spezifischen Typen kennen, die Sie speichern.

Ejemplo:

// Loose-Type
Hashtable hashTable = new Hashtable();
hashTable.Add("key", "value");
hashTable.Add("int value", 2);
// ...
foreach (DictionaryEntry dictionaryEntry in hashTable) {
    Console.WriteLine("{0} -> {1}", dictionaryEntry.Key, dictionaryEntry.Value);
}

// Strong-Type
Dictionary<string, int> intMap = new Dictionary<string, int>();
intMap.Add("One", 1);
intMap.Add("Two", 2);
// ..
foreach (KeyValuePair<string, int> keyValue in intMap) {
    Console.WriteLine("{0} -> {1}", keyValue.Key, keyValue.Value);
}

0 Stimmen

Vielen Dank, aber wie bekomme ich den Partikulärwert, z.B. möchte ich hier zwei Werte bekommen...

1 Stimmen

Sie würden verwenden intMap["Two"] wie ein normaler Array-Accessor. Sie erhalten ein Objekt vom Typ int aufgrund der starken Typisierung, während Sie bei der Hashtable nur eine object .

0 Stimmen

Sie können einen Wert auf diese Weise erhalten: intvalue=hashTable["Two"]

2voto

npinti Punkte 51030

Sie können die Wörterbuch Datenstruktur, mit string für den Schlüsseltyp und den Typ Ihrer Daten für den Werttyp (möglicherweise object wenn mehrere Arten von Datenelementen).

1voto

Kevin Punkte 532

Sie können Dictionary in c# verwenden siehe Beispiele unter http://www.dotnetperls.com/dictionary-keys

1voto

corlettk Punkte 12546

Saravanan

Java Map ist gleich C# Dictionary (mehr oder weniger)... und Sie wollen natürlich die generische Version.

Dies sieht (auf den ersten Blick) wie ein anständiges Beispiel aus. http://www.dotnetperls.com/dictionary-lookup

Sie sollten auch einen Blick darauf werfen: http://www.25hoursaday.com/CsharpVsJava.html ... Ich habe festgestellt, dass es extrem hilfreich mit immer up-to-Speed in C # sein.

Zum Wohl. Keith.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X