Samstag, 1. März 2014

Tupel darstellen mit Tuple

In diesem Post möchte ich zeigen, wie man Tupel in C# darstellt, ähnlich dem aus C bekannten pair Typs. In C# geht dies mit der Klasse Tuple.
Ein Tupel wird folgendermaßen initialisiert:

Tuple<string, int> TestTuple = new Tuple<string, int>("Test", 1);

Zur Typsicherheit können also die beiden zu paarenden Datentypen angegeben werden, auf der rechten Seite werden die Werte des Tupels dann initialisiert. Hier erstellen wir ein Tupel, dessen erster Wert ein String ist, der zweite ein Integer.
Zugriff auf diese Einträge ist dann nur noch lesend möglich, was über TestTuple.Item1 bzw. TestTuple.Item2 gemacht werden kann.

Kommentare:

  1. Wo ist der Unterschied zum KeyValuePair<> in System.Dictionary.Generic?

    AntwortenLöschen
  2. Der Unterschied ist, dass Tuple eine Klasse und KeyValuePair ein struct ist. Damit ist das Tuple fast immer schneller.
    http://www.dotnetperls.com/tuple-keyvaluepair

    AntwortenLöschen