Tuple Tuple Tuple Tuple Class

Definição

Fornece métodos estáticos para criar 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
Herança
TupleTupleTupleTuple

Exemplos

O exemplo a seguir cria uma octuple (8 tuplas) que contém números primos inferiores a 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

Comentários

Uma tupla é uma estrutura de dados que tem um número específico e uma sequência de elementos.A tuple is a data structure that has a specific number and sequence of elements. Um exemplo de uma tupla é uma estrutura de dados com três elementos (conhecidos como 3 tuplas ou triplos) que é usada para armazenar um identificador, como o nome de uma pessoa no primeiro elemento, um ano no segundo elemento e a renda da pessoa para esse ano no terceiro 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. O .NET Framework dá suporte direto a tuplas com um a sete elementos.The .NET Framework directly supports tuples with one to seven elements. Além disso, você pode criar tuplas de oito ou mais elementos aninhando objetos de tupla na Rest propriedade de um 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.

As tuplas são comumente usadas de quatro maneiras:Tuples are commonly used in four ways:

  • Para representar um único conjunto de dados.To represent a single set of data. Por exemplo, uma tupla pode representar um registro de banco de dados, e seus componentes podem representar campos individuais do registro.For example, a tuple can represent a database record, and its components can represent individual fields of the record.

  • Para fornecer acesso fácil a, e a manipulação de um conjunto de dados.To provide easy access to, and manipulation of, a data set.

  • Para retornar vários valores de um método sem usar out parâmetros (in C#) ou ByRef parâmetros (em Visual Basic).To return multiple values from a method without using out parameters (in C#) or ByRef parameters (in Visual Basic).

  • Para passar vários valores para um método por meio de um parâmetro único.To pass multiple values to a method through a single parameter. Por exemplo, o Thread.Start(Object) método tem um único parâmetro que permite que você forneça um valor para o método que o thread executa no momento da inicialização.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. Se você fornecer um Tuple<T1,T2,T3> objeto como o argumento do método, poderá fornecer a rotina de inicialização do thread com três itens de dados.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.

A Tuple classe não representa uma tupla.The Tuple class does not itself represent a tuple. Em vez disso, é uma classe que fornece métodos estáticos para a criação de instâncias dos tipos de tupla com suporte pelo .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. Ele fornece métodos auxiliares que você pode chamar para instanciar objetos de tupla sem a necessidade de especificar explicitamente o tipo de cada componente de tupla.It provides helper methods that you can call to instantiate tuple objects without having to explicitly specify the type of each tuple component.

Embora você possa criar uma instância de uma classe de tupla chamando seu construtor de classe, o código para fazer isso pode ser complicado.Although you can create an instance of a tuple class by calling its class constructor, the code to do so can be cumbersome. O exemplo a seguir usa um construtor de classe para criar uma 7 tupla ou septuple que contém dados de população para a cidade de Nova 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

Criar o mesmo objeto de tupla usando um método auxiliar é mais direto, como mostra o exemplo a seguir.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

Os Create métodos auxiliares dão suporte direto à criação de objetos de tupla que têm de um a oito componentes (ou seja, singletons por meio 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). Embora não haja nenhum limite prático para o número de componentes que uma tupla pode ter, os métodos auxiliares não estão disponíveis para criar uma tupla com nove ou mais 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 criar essa tupla, você deve chamar o Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> Construtor.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.

Observação

Para obter informações adicionais e exemplos que usam tuplas, consulte a documentação para os tipos individuais de tupla na .NET Framework.For additional information and examples that use tuples, see the documentation for the individual tuple types in the .NET Framework. Eles são listados na seção Consulte também no final deste tópico.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)

Cria uma nova tupla de 8 ou octupla.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)

Cria uma nova tupla de 7 ou um sétuplo.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)

Cria uma nova tupla de 6 ou sêxtupla.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)

Cria uma nova tupla de 5 ou 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)

Cria uma nova tupla de 4 ou quádrupla.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)

Cria uma nova tupla de 3 ou um triplo.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)

Cria uma nova tupla de 2 ou par.Creates a new 2-tuple, or pair.

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

Cria uma nova tupla de 1 ou singleton.Creates a new 1-tuple, or singleton.

Aplica-se a

Veja também