Tuple Klass

Definition

Innehåller statiska metoder för att skapa tuppelns objekt.

public ref class Tuple abstract sealed
public static class Tuple
type Tuple = class
Public Class Tuple
Arv
Tuple

Exempel

I följande exempel skapas en 8-tupplar (octuple) som innehåller primtal som är mindre än 20.

var primes = Tuple.Create(2, 3, 5, 7, 11, 13, 17, 19);
Console.WriteLine("Prime numbers less than 20: " + 
                  "{0}, {1}, {2}, {3}, {4}, {5}, {6}, and {7}",
                  primes.Item1, primes.Item2, primes.Item3, 
                  primes.Item4, primes.Item5, primes.Item6,
                  primes.Item7, primes.Rest.Item1);
// The example displays the following output:
//    Prime numbers less than 20: 2, 3, 5, 7, 11, 13, 17, and 19
open System

let primes = Tuple.Create(2, 3, 5, 7, 11, 13, 17, 19)
printfn $"Prime numbers less than 20: {primes.Item1}, {primes.Item2}, {primes.Item3}, {primes.Item4}, {primes.Item5}, {primes.Item6}, {primes.Item7}, and {primes.Rest.Item1}"
//    Prime numbers less than 20: 2, 3, 5, 7, 11, 13, 17, and 19
Dim primes = Tuple.Create(2, 3, 5, 7, 11, 13, 17, 19)
Console.WriteLine("Prime numbers less than 20: " + 
                  "{0}, {1}, {2}, {3}, {4}, {5}, {6}, and {7}",
                  primes.Item1, primes.Item2, primes.Item3, 
                  primes.Item4, primes.Item5, primes.Item6,
                  primes.Item7, primes.Rest.Item1)
' The example displays the following output:
'     Prime numbers less than 20: 2, 3, 5, 7, 11, 13, 17, and 19

Kommentarer

En tuppeln är en datastruktur som har ett specifikt antal och en sekvens med element. Ett exempel på en tuppel är en datastruktur med tre element (kallas för en tretuppel eller trippel) som används för att lagra en identifierare, till exempel en persons namn i det första elementet, ett år i det andra elementet och personens inkomst för det året i det tredje elementet. .NET Framework har direkt stöd för tupplar med ett till sju element. Dessutom kan du skapa tupplar med åtta eller fler element genom att kapsla tupplar i Rest egenskapen för ett Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> objekt.

Tupplar används ofta på fyra sätt:

  • För att representera en enda uppsättning data. En tuppeln kan till exempel representera en databaspost och dess komponenter kan representera enskilda fält i posten.

  • För att ge enkel åtkomst till och manipulering av en datauppsättning.

  • Om du vill returnera flera värden från en metod utan att använda parametrarna out (i C#) eller ByRef (i Visual Basic).

  • Skicka flera värden till en metod via en enda parameter. Metoden har till exempel Thread.Start(Object) en enda parameter som gör att du kan ange ett värde till den metod som tråden kör vid start. Om du anger ett Tuple<T1,T2,T3> objekt som metodargument kan du ange trådens startrutin med tre dataobjekt.

Klassen Tuple representerar inte själv en tuppeln. I stället är det en klass som tillhandahåller statiska metoder för att skapa instanser av tupplar som stöds av .NET Framework. Den innehåller hjälpmetoder som du kan anropa för att instansiera tuppelns objekt utan att uttryckligen behöva ange typen av varje tuppelns komponent.

Även om du kan skapa en instans av en tuppelns klass genom att anropa dess klasskonstruktor, kan koden för att göra det vara besvärlig. I följande exempel används en klasskonstruktor för att skapa en 7-tupplare eller septuple som innehåller befolkningsdata för New York City för varje folkräkning från 1950 till 2000.

// Create a 7-tuple.
var population = new Tuple<string, int, int, int, int, int, int>(
                           "New York", 7891957, 7781984, 
                           7894862, 7071639, 7322564, 8008278);
// Display the first and last elements.
Console.WriteLine("Population of {0} in 2000: {1:N0}",
                  population.Item1, population.Item7);
// The example displays the following output:
//       Population of New York in 2000: 8,008,278
// Create a 7-tuple.
let population = Tuple<string, int, int, int, int, int, int>(
                            "New York", 7891957, 7781984, 
                            7894862, 7071639, 7322564, 8008278)
// Display the first and last elements.
printfn $"Population of {population.Item1} in 2000: {population.Item7:N0}"
// The example displays the following output:
//       Population of New York in 2000: 8,008,278
' Create a 7-tuple.
Dim population As New Tuple(Of String, Integer, Integer, Integer, Integer, Integer, Integer) _
                           ("New York", 7891957, 7781984, 7894862, 7071639, 7322564, 8008278)
' Display the first and last elements.
Console.WriteLine("Population of {0} in 2000: {1:N0}",
                  population.Item1, population.Item7)
' The example displays the following output:
'        Population of New York in 2000: 8,008,278

Det är enklare att skapa samma tuppelns objekt med hjälp av en hjälpmetod, vilket visas i följande exempel.

// Create a 7-tuple.
var population = Tuple.Create("New York", 7891957, 7781984, 7894862, 7071639, 7322564, 8008278);
// Display the first and last elements.
Console.WriteLine("Population of {0} in 2000: {1:N0}",
                  population.Item1, population.Item7);
// The example displays the following output:
//       Population of New York in 2000: 8,008,278
// Create a 7-tuple.
let population = Tuple.Create("New York", 7891957, 7781984, 7894862, 7071639, 7322564, 8008278)
// Display the first and last elements.
printfn $"Population of {population.Item1} in 2000: {population.Item7:N0}"
// The example displays the following output:
//       Population of New York in 2000: 8,008,278
' Create a 7-tuple.
Dim population = Tuple.Create("New York", 7891957, 7781984, 7894862, 7071639, 7322564, 8008278)
' Display the first and last elements.
Console.WriteLine("Population of {0} in 2000: {1:N0}",
                  population.Item1, population.Item7)
' The example displays the following output:
'        Population of New York in 2000: 8,008,278

Hjälpmetoderna Create stöder direkt skapandet av tuppelobjekt som har från en till åtta komponenter (det vill: singletons via oktupler). Även om det inte finns någon praktisk gräns för hur många komponenter en tupppel kan ha, är hjälpmetoder inte tillgängliga för att skapa en tuppeln med nio eller fler komponenter. Om du vill skapa en sådan tuppeln måste du anropa Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> konstruktorn.

Note

Mer information och exempel som använder tupplar finns i dokumentationen för enskilda tupplar i .NET Framework. De visas i avsnittet Se även i slutet av det här avsnittet.

Metoder

Name Description
Create<T1,T2,T3,T4,T5,T6,T7,T8>(T1, T2, T3, T4, T5, T6, T7, T8)

Skapar en ny 8-tuppeln eller octuple.

Create<T1,T2,T3,T4,T5,T6,T7>(T1, T2, T3, T4, T5, T6, T7)

Skapar en ny 7-tuppeln eller septuple.

Create<T1,T2,T3,T4,T5,T6>(T1, T2, T3, T4, T5, T6)

Skapar en ny 6-tuppeln eller sextuple.

Create<T1,T2,T3,T4,T5>(T1, T2, T3, T4, T5)

Skapar en ny 5-tuppeln eller quintuple.

Create<T1,T2,T3,T4>(T1, T2, T3, T4)

Skapar en ny 4-tuppel eller fyrdubbel.

Create<T1,T2,T3>(T1, T2, T3)

Skapar en ny 3-tuppel eller trippel.

Create<T1,T2>(T1, T2)

Skapar en ny 2-tuppeln eller ett par.

Create<T1>(T1)

Skapar en ny 1 tuppel eller singleton.

Gäller för

Se även