0Pricing
C# Academy · Lección

Conceptos básicos de las tuplas de valores

Cree tuplas ligeras para agrupar datos.

Conceptos básicos de las tuplas de valores es una lección gratuita de C# Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de C# Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de C# Academy incluye 4 lecciones en total.

¿Qué es una tupla?

Una tupla agrupa varios valores en un único conjunto ligero sin definir una clase. Las tuplas de valores de C# utilizan paréntesis: (int, string).

using System;

class Program
{
    static void Main()
    {
        (int, string) pair = (1, "one");
        Console.WriteLine(pair.Item1 + " = " + pair.Item2);
    }
}

Crear una tupla de valores

Escriba los valores entre paréntesis. El compilador infiere el tipo de tupla a partir de ellos.

using System;

class Program
{
    static void Main()
    {
        var point = (3, 4);
        Console.WriteLine("x=" + point.Item1 + ", y=" + point.Item2);
    }
}

Acceder a los elementos: Item1, Item2

Se accede a los elementos de una tupla sin nombre mediante Item1, Item2, Item3, y así sucesivamente, en orden.

using System;

class Program
{
    static void Main()
    {
        var rgb = (255, 128, 0);
        Console.WriteLine("R=" + rgb.Item1 + " G=" + rgb.Item2 + " B=" + rgb.Item3);
    }
}

Las tuplas admiten tipos mixtos

Cada elemento puede ser de un tipo diferente. Una tupla puede combinar números, cadenas, valores booleanos y mucho más.

using System;

class Program
{
    static void Main()
    {
        var user = ("Ada", 36, true);
        Console.WriteLine(user.Item1 + ", age " + user.Item2 + ", active=" + user.Item3);
    }
}

Las tuplas son mutables

Los elementos de una tupla de valores se pueden reasignar, ya que cada ItemN es un campo modificable.

using System;

class Program
{
    static void Main()
    {
        var score = (player: "A", points: 0);
        score.points = 10;
        score.points += 5;
        Console.WriteLine(score.player + ": " + score.points);
    }
}

Tuplas como conjuntos locales

Las tuplas son ideales para agrupar temporalmente valores dentro de un método sin crear un tipo específico.

using System;

class Program
{
    static void Main()
    {
        var range = (min: 5, max: 50);
        int span = range.max - range.min;
        Console.WriteLine("Span: " + span);
    }
}

Comparar tuplas

Las tuplas de valores admiten la igualdad: dos tuplas son iguales si todos sus elementos correspondientes son iguales.

using System;

class Program
{
    static void Main()
    {
        var a = (1, 2);
        var b = (1, 2);
        var c = (1, 3);
        Console.WriteLine(a == b);
        Console.WriteLine(a == c);
    }
}

Anidar tuplas

Un elemento de una tupla puede ser otra tupla, lo que permite crear pequeños grupos estructurados.

using System;

class Program
{
    static void Main()
    {
        var line = (start: (0, 0), end: (3, 4));
        Console.WriteLine("From " + line.start.Item1 + "," + line.start.Item2 +
            " to " + line.end.Item1 + "," + line.end.Item2);
    }
}

Tuplas en colecciones

Puede almacenar tuplas en una lista para mantener juntos los datos relacionados sin crear una clase.

using System;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        var scores = new List<(string, int)>
        {
            ("Ann", 90),
            ("Bob", 85)
        };
        foreach (var s in scores)
            Console.WriteLine(s.Item1 + ": " + s.Item2);
    }
}

Semántica de valor

Una tupla de valores es un struct, por lo que al asignarla se copian los valores. Cambiar la copia no afecta al original.

using System;

class Program
{
    static void Main()
    {
        var original = (n: 1);
        var copy = original;
        copy.n = 99;
        Console.WriteLine("original=" + original.n + ", copy=" + copy.n);
    }
}

Unir todas las piezas

Las tuplas de valores proporcionan agrupaciones tipadas rápidas, ideales para datos de corta duración dentro de un método o una lista sencilla.

using System;

class Program
{
    static void Main()
    {
        var result = (count: 3, total: 150);
        double average = (double)result.total / result.count;
        Console.WriteLine("Average: " + average.ToString("0.0"));
    }
}

Comprobación rápida

Compruebe su comprensión de las tuplas de valores.

Resumen

Una tupla de valores agrupa varios valores entre paréntesis, como (int, string), sin necesidad de una clase. Se accede a los elementos sin nombre mediante Item1 y Item2. Las tuplas son estructuras mutables con semántica de valor y admiten la igualdad. Son ideales para agrupaciones locales y rápidas.

using System;

class Program
{
    static void Main()
    {
        var t = (1, "one", true);
        Console.WriteLine(t.Item1 + " " + t.Item2 + " " + t.Item3);
    }
}

Preguntas frecuentes

¿La lección «Conceptos básicos de las tuplas de valores» es gratis?

Sí — el texto completo de «Conceptos básicos de las tuplas de valores» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de C# Academy, actualiza a CoddyKit PRO. El curso de C# Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Conceptos básicos de las tuplas de valores»?

Cree tuplas ligeras para agrupar datos. Practicas C# Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar C# Academy?

No se requiere experiencia previa. C# Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.

¿Cuánto tiempo toma la lección «Conceptos básicos de las tuplas de valores»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de C# Academy?

Sí. Cada lección de C# Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Conceptos básicos de las tuplas de valores
  2. Elementos con nombre en tuplas
  3. Deconstrucción
  4. Tuplas como valores de retorno de métodos
← Volver a C# Academy