Tuple Tuple Tuple Tuple Class

Definición

Proporciona los métodos estáticos para crear los objetos de tupla.Provides static methods for creating tuple objects.

public ref class Tuple abstract sealed
public static class Tuple
type Tuple = class
Public Class Tuple
Herencia
TupleTupleTupleTuple

Ejemplos

En el ejemplo siguiente se crea una tupla de 8 (óctupla) que contiene números primos menores que 20.The following example creates an 8-tuple (octuple) that contains prime numbers that are less than 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
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

Comentarios

Una tupla es una estructura de datos que tiene un número específico y una secuencia de elementos.A tuple is a data structure that has a specific number and sequence of elements. Un ejemplo de una tupla es una estructura de datos con tres elementos (conocida como una tupla de 3 o triple) que se usa para almacenar un identificador como el nombre de una persona en el primer elemento, un año en el segundo elemento y los ingresos de la persona para ese año en el tercer elemento.An example of a tuple is a data structure with three elements (known as a 3-tuple or triple) that is used to store an identifier such as a person's name in the first element, a year in the second element, and the person's income for that year in the third element. El .NET Framework admite directamente tuplas de uno a siete elementos.The .NET Framework directly supports tuples with one to seven elements. Además, puede crear tuplas de ocho o más elementos anidando objetos de tupla en la Rest propiedad de un Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> objeto.In addition, you can create tuples of eight or more elements by nesting tuple objects in the Rest property of a Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> object.

Las tuplas se utilizan normalmente de cuatro maneras:Tuples are commonly used in four ways:

  • Para representar un único conjunto de datos.To represent a single set of data. Por ejemplo, una tupla puede representar un registro de base de datos y sus componentes pueden representar campos individuales del registro.For example, a tuple can represent a database record, and its components can represent individual fields of the record.

  • Para facilitar el acceso y la manipulación de un conjunto de datos.To provide easy access to, and manipulation of, a data set.

  • Para devolver varios valores de un método sin usar out parámetros (en C#) o ByRef parámetros (en Visual Basic).To return multiple values from a method without using out parameters (in C#) or ByRef parameters (in Visual Basic).

  • Para pasar varios valores a un método a través de un solo parámetro.To pass multiple values to a method through a single parameter. Por ejemplo, el Thread.Start(Object) método tiene un único parámetro que le permite proporcionar un valor al método que el subproceso ejecuta en el momento de inicio.For example, the Thread.Start(Object) method has a single parameter that lets you supply one value to the method that the thread executes at startup time. Si proporciona un Tuple<T1,T2,T3> objeto como argumento del método, puede proporcionar la rutina de inicio del subproceso con tres elementos de datos.If you supply a Tuple<T1,T2,T3> object as the method argument, you can supply the thread's startup routine with three items of data.

La Tuple clase no representa una tupla.The Tuple class does not itself represent a tuple. En su lugar, es una clase que proporciona métodos estáticos para crear instancias de los tipos de tupla que son compatibles con el .NET Framework.Instead, it is a class that provides static methods for creating instances of the tuple types that are supported by the .NET Framework. Proporciona métodos auxiliares a los que se puede llamar para crear instancias de objetos de tupla sin tener que especificar explícitamente el tipo de cada componente de la tupla.It provides helper methods that you can call to instantiate tuple objects without having to explicitly specify the type of each tuple component.

Aunque puede crear una instancia de una clase de tupla llamando a su constructor de clase, el código para hacerlo puede ser engorroso.Although you can create an instance of a tuple class by calling its class constructor, the code to do so can be cumbersome. En el ejemplo siguiente se usa un constructor de clase para crear una tupla de 7 o Séptuplo que contiene los datos de población de la ciudad de Nueva York para cada censo de 1950 a 2000.The following example uses a class constructor to create a 7-tuple or septuple that contains population data for New York City for each census from 1950 through 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.
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

Crear el mismo objeto de tupla mediante un método auxiliar es más sencillo, como se muestra en el ejemplo siguiente.Creating the same tuple object by using a helper method is more straightforward, as the following example shows.

// 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.
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

Los Create métodos auxiliares admiten directamente la creación de objetos de tupla que tienen de uno a ocho componentes (es decir, singletons a través de octuples).The Create helper methods directly support the creation of tuple objects that have from one to eight components (that is, singletons through octuples). Aunque no hay ningún límite práctico para el número de componentes que puede tener una tupla, los métodos auxiliares no están disponibles para crear una tupla con nueve o más componentes.Although there is no practical limit to the number of components a tuple may have, helper methods are not available to create a tuple with nine or more components. Para crear este tipo de tupla, debe llamar al Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> constructor.To create such a tuple, you must call the Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> constructor.

Nota

Para obtener información adicional y ejemplos que usan tuplas, consulte la documentación de los tipos de tupla individuales en el .NET Framework.For additional information and examples that use tuples, see the documentation for the individual tuple types in the .NET Framework. Estos se enumeran en la sección Vea también al final de este tema.These are listed in the See Also section at the end of this topic.

Métodos

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

Crea una nueva tupla de 8 u óctuple.Creates a new 8-tuple, or octuple.

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

Crea una nueva tupla de 7 o séptuplo.Creates a new 7-tuple, or septuple.

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

Crea una nueva tupla de 6 o séxtuplo.Creates a new 6-tuple, or sextuple.

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

Crea una nueva tupla de 5 o quíntuplo.Creates a new 5-tuple, or quintuple.

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

Crea una nueva tupla de 4 o cuádruplo.Creates a new 4-tuple, or quadruple.

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

Crea una nueva tupla de 3 o triple.Creates a new 3-tuple, or triple.

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

Crea una nueva tupla de 2 o par.Creates a new 2-tuple, or pair.

Create<T1>(T1) Create<T1>(T1) Create<T1>(T1) Create<T1>(T1)

Crea una nueva tupla de 1 o singleton.Creates a new 1-tuple, or singleton.

Se aplica a

Consulte también: