¿Le resultó útil esta página?
Sus comentarios sobre este contenido son muy importantes. Háganos saber su opinión.
¿Tiene comentarios adicionales?
Caracteres restantes: 1500
Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

Tuple<T1, T2, T3, T4, T5> (Clase)

Representa una tupla de 5 o quíntuplo.

System.Object
  System.Tuple<T1, T2, T3, T4, T5>

Espacio de nombres:  System
Ensamblado:  mscorlib (en mscorlib.dll)

[SerializableAttribute]
public class Tuple<T1, T2, T3, T4, T5> : IStructuralEquatable, 
	IStructuralComparable, IComparable

Parámetros de tipo

T1

Tipo del primer componente de la tupla.

T2

Tipo del segundo componente de la tupla.

T3

Tipo del tercer componente de la tupla.

T4

Tipo del cuarto componente de la tupla.

T5

Tipo del quinto componente de la tupla.

El tipo Tuple<T1, T2, T3, T4, T5> expone los siguientes miembros.

  NombreDescripción
Método públicoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsTuple<T1, T2, T3, T4, T5>Inicializa una nueva instancia de la clase Tuple<T1, T2, T3, T4, T5>.
Arriba

  NombreDescripción
Propiedad públicaCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsItem1Obtiene el valor del primer componente del objeto Tuple<T1, T2, T3, T4, T5> actual.
Propiedad públicaCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsItem2Obtiene el valor del segundo componente del objeto Tuple<T1, T2, T3, T4, T5> actual.
Propiedad públicaCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsItem3Obtiene el valor del tercer componente del objeto Tuple<T1, T2, T3, T4, T5> actual.
Propiedad públicaCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsItem4Obtiene el valor del cuarto componente del objeto Tuple<T1, T2, T3, T4, T5> actual.
Propiedad públicaCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsItem5Obtiene el valor del quinto componente del objeto Tuple<T1, T2, T3, T4, T5> actual.
Arriba

  NombreDescripción
Método públicoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsEqualsDevuelve un valor que indica si el objeto Tuple<T1, T2, T3, T4, T5> actual es igual que un objeto especificado. (Invalida a Object.Equals(Object)).
Método protegidoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsFinalize Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object).
Método públicoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsGetHashCodeDevuelve el código hash del objeto Tuple<T1, T2, T3, T4, T5> actual. (Invalida a Object.GetHashCode()).
Método públicoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsGetType Obtiene el Type de la instancia actual. (Se hereda de Object).
Método protegidoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsMemberwiseClone Crea una copia superficial del Object actual. (Se hereda de Object).
Método públicoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsToStringDevuelve una cadena que representa el valor de esta instancia de Tuple<T1, T2, T3, T4, T5>. (Invalida a Object.ToString()).
Arriba

  NombreDescripción
Implementación explícita de interfacesMétodo privadoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsIComparable.CompareToCompara el objeto Tuple<T1, T2, T3, T4, T5> actual con un objeto especificado y devuelve un entero que indica si el objeto actual precede o sigue al objeto especificado, o bien se encuentra en la misma posición que dicho objeto en el criterio de ordenación.
Implementación explícita de interfacesMétodo privadoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsIStructuralComparable.CompareToCompara el objeto Tuple<T1, T2, T3, T4, T5> actual con un objeto especificado utilizando un comparador especificado y devuelve un entero que indica si el objeto actual precede o sigue al objeto especificado, o bien se encuentra en la misma posición que dicho objeto en el criterio de ordenación.
Implementación explícita de interfacesMétodo privadoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsIStructuralEquatable.EqualsDevuelve un valor que indica si el objeto Tuple<T1, T2, T3, T4, T5> actual es igual que el objeto especificado según el método de comparación especificado.
Implementación explícita de interfacesMétodo privadoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsIStructuralEquatable.GetHashCodeCalcula el código hash del objeto Tuple<T1, T2, T3, T4, T5> actual usando el método de cálculo especificado.
Arriba

Una tupla es una estructura de datos que tiene un número y una secuencia de valores concretos. La clase Tuple<T1, T2, T3, T4, T5> representa una tupla de 5 o quíntuplo, que es una tupla con cinco componentes.

Puede crear instancias de un objeto Tuple<T1, T2, T3, T4, T5> llamando al constructor Tuple<T1, T2, T3, T4, T5> o al método estático Tuple.Create<T1, T2, T3, T4, T5>(T1, T2, T3, T4, T5). Puede recuperar el valor de los componentes de la tupla usando las propiedades de instancia de solo lectura Item1, Item2, Item3, Item4 y Item5

Las tuplas se utilizan normalmente de cuatro maneras diferentes:

  • Para representar un único conjunto de datos. Por ejemplo, una tupla puede representar un registro de base de datos y sus componentes pueden representar campos individuales del registro.

  • Para proporcionar un acceso, y manipulación, fácil de un conjunto de datos. En el siguiente ejemplo se define una matriz de objetos Tuple<T1, T2, T3, T4, T5> que contienen los nombres de los corredores (RB, Running Backs) en fútbol estadounidense, el número de partidos en los que jugaron y el número de carreras, el total de yardas conseguidas y los ensayos anotados durante esos partidos. La matriz se pasa al método ComputeStatistics, que calcula cada número de corredor por acarreos de juego, promedio de yardas por juego, promedio de yardas por acarreo y promedio de tantos por intento.

    
    using System;
    using System.Collections.Generic;
    
    public class Example
    {
       public static void Main()
       {
          // Organization of runningBacks 5-tuple:
          //    Component 1: Player name
          //    Component 2: Number of games played
          //    Component 3: Number of attempts (carries)
          //    Component 4: Number of yards gained 
          //    Component 5: Number of touchdowns   
          Tuple<string, int, int, int, int>[] runningBacks =
               { Tuple.Create("Payton, Walter", 190, 3838, 16726, 110),  
                 Tuple.Create("Sanders, Barry", 153, 3062, 15269, 99),            
                 Tuple.Create("Brown, Jim", 118, 2359, 12312, 106),            
                 Tuple.Create("Dickerson, Eric", 144, 2996, 13259, 90),            
                 Tuple.Create("Faulk, Marshall", 176, 2836, 12279, 100) }; 
          // Calculate statistics.
          // Organization of runningStats 5-tuple:
          //    Component 1: Player name
          //    Component 2: Number of attempts per game
          //    Component 3: Number of yards per game
          //    Component 4: Number of yards per attempt 
          //    Component 5: Number of touchdowns per attempt   
          Tuple<string, double, double, double, double>[] runningStats  = 
              ComputeStatistics(runningBacks);
    
          // Display the result.          
          Console.WriteLine("{0,-16} {1,5} {2,6} {3,7} {4,7} {5,7} {6,7} {7,5} {8,7}\n", 
                            "Name", "Games", "Att", "Att/Gm", "Yards", "Yds/Gm",
                            "Yds/Att", "TD", "TD/Att");
          for (int ctr = 0; ctr < runningBacks.Length; ctr++)
             Console.WriteLine("{0,-16} {1,5} {2,6:N0} {3,7:N1} {4,7:N0} {5,7:N1} {6,7:N2} {7,5} {8,7:N3}\n", 
                               runningBacks[ctr].Item1, runningBacks[ctr].Item2, runningBacks[ctr].Item3, 
                               runningStats[ctr].Item2, runningBacks[ctr].Item4, runningStats[ctr].Item3, 
                               runningStats[ctr].Item4, runningBacks[ctr].Item5, runningStats[ctr].Item5);
       }
    
       private static Tuple<string, double, double, double, double>[] ComputeStatistics(
                    Tuple<string, int, int, int, int>[] players) 
       {
          Tuple<string, double, double, double, double> result; 
          var list = new List<Tuple<string, double, double, double, double>>();
    
          foreach (var player in players)
          {
             // Create result object containing player name and statistics.
             result = Tuple.Create(player.Item1,  
                                   player.Item3/((double)player.Item2), 
                                   player.Item4/((double)player.Item2),
                                   player.Item4/((double)player.Item3), 
                                   player.Item5/((double)player.Item3));
             list.Add(result);         
          }
          return list.ToArray();  
       }
    }
    // The example displays the following output:
    //    Name             Games    Att  Att/Gm   Yards  Yds/Gm Yds/Att    TD  TD/Att
    //    
    //    Payton, Walter     190  3,838    20.2  16,726    88.0    4.36   110   0.029
    //    
    //    Sanders, Barry     153  3,062    20.0  15,269    99.8    4.99    99   0.032
    //    
    //    Brown, Jim         118  2,359    20.0  12,312   104.3    5.22   106   0.045
    //    
    //    Dickerson, Eric    144  2,996    20.8  13,259    92.1    4.43    90   0.030
    //    
    //    Faulk, Marshall    176  2,836    16.1  12,279    69.8    4.33   100   0.035
    
    
    
  • Para devolver varios valores de un método sin el uso de parámetros out (en C#) o parámetros ByRef (en Visual Basic). Por ejemplo, el ejemplo anterior devuelve sus estadísticas calculadas, junto con el nombre del jugador, en una matriz de objetos Tuple<T1, T2, T3, T4, T5>.

  • Para pasar varios valores a un método a través de un único parámetro. Por ejemplo, el método Thread.Start(Object) tiene un parámetro único que le permite proporcionar un valor al método que el subproceso ejecuta en el inicio. Si proporciona un objeto Tuple<T1, T2, T3, T4, T5> como el argumento del método, puede proporcionar la rutina de inicio del subproceso con cinco elementos de datos.

.NET Framework

Compatible con: 4.5.2, 4.5.1, 4.5, 4

.NET Framework Client Profile

Compatible con: 4

Biblioteca de clases portable

Compatible con: Biblioteca de clases portable

.NET para aplicaciones de la Tienda Windows

Compatible con: Windows 8

.NET para aplicaciones de Windows Phone

Compatible con: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2015 Microsoft