Arrays, slicing, List<T> y Dictionary<TKey,TValue>
Cree y use arrays, copie un slice y trabaje con List y Dictionary para elementos dinámicos y búsquedas por clave.
Arrays, slicing, List<T> y Dictionary<TKey,TValue> es una lección gratuita de C# Academy en CoddyKit. Esta es la lección 1 de 3. 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 3 lecciones en total.
Descripción general de la lección
Objetivo: Elegir el contenedor adecuado.
- Array: tamaño fijo e indexación rápida
- List<T>: aumenta y disminuye de tamaño
- Dictionary<TKey,TValue>: búsqueda rápida por clave
- Segmento sencillo de un array mediante copia
Conceptos básicos de Array
Los arrays tienen tamaño fijo y permiten la indexación. Use Length e índices que comiencen en cero.
using System;
public class Program
{
public static void Main(string[] args)
{
int[] nums = new int[] { 10, 20, 30 };
Console.WriteLine("Length = " + nums.Length);
Console.WriteLine("First = " + nums[0]);
Console.WriteLine("Last = " + nums[nums.Length - 1]);
// Update by index
nums[1] = 25;
Console.WriteLine("Updated middle = " + nums[1]);
}
}
Segmento de un array mediante copia
No hay operador de rangos en C# 6. Cree un pequeño método auxiliar con Array.Copy para copiar un segmento.
using System;
public class Program
{
// Copy a slice [start, start+count) into a new array
public static int[] Slice(int[] src, int start, int count)
{
int[] dst = new int[count];
Array.Copy(src, start, dst, 0, count);
return dst;
}
public static void Main(string[] args)
{
int[] data = new int[] { 5, 6, 7, 8, 9 };
int[] middle = Slice(data, 1, 3); // {6,7,8}
Console.WriteLine("Slice len=" + middle.Length + " first=" + middle[0] + " last=" + middle[middle.Length - 1]);
}
}
Conceptos básicos de List<T>
List<T> cambia de tamaño automáticamente. Use Add/Insert/Remove y Count.
using System;
using System.Collections.Generic;
public class Program
{
public static void Main(string[] args)
{
List<string> items = new List<string>();
items.Add("apple");
items.Add("banana");
items.Insert(1, "kiwi"); // apple, kiwi, banana
Console.WriteLine("Count = " + items.Count);
Console.WriteLine("Second = " + items[1]);
items.Remove("apple");
Console.WriteLine("After remove, first = " + items[0]);
}
}
Conceptos básicos de Dictionary
Dictionary almacena pares clave-valor. Use ContainsKey/TryGetValue para realizar búsquedas seguras.
using System;
using System.Collections.Generic;
public class Program
{
public static void Main(string[] args)
{
Dictionary<string, int> ages = new Dictionary<string, int>();
ages["Ada"] = 28; // add
ages["Alan"] = 35; // add
ages["Alan"] = 36; // update
int value;
if (ages.TryGetValue("Ada", out value))
{
Console.WriteLine("Ada age = " + value);
}
Console.WriteLine("Has Grace? " + ages.ContainsKey("Grace"));
}
}
Elegir colecciones
Elija:
- Array para tamaños fijos e indexación numérica
- List<T> cuando cambie el tamaño
- Dictionary<K,V> cuando tenga claves únicas
- Copie segmentos con un método auxiliar que use Array.Copy
Elección para búsquedas por clave
Repaso
Repaso: Los arrays tienen tamaño fijo; copie segmentos con Array.Copy. Use List<T> para listas dinámicas y Dictionary<K,V> para búsquedas rápidas por clave.
Preguntas frecuentes
¿La lección «Arrays, slicing, List<T> y Dictionary<TKey,TValue>» es gratis?
Sí — el texto completo de «Arrays, slicing, List<T> y Dictionary<TKey,TValue>» 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 3 lecciones en total.
¿Qué aprenderé en «Arrays, slicing, List<T> y Dictionary<TKey,TValue>»?
Cree y use arrays, copie un slice y trabaje con List y Dictionary para elementos dinámicos y búsquedas por clave. 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 3.
¿Cuánto tiempo toma la lección «Arrays, slicing, List<T> y Dictionary<TKey,TValue>»?
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
- Arrays, slicing, List y Dictionary
- Patrones de foreach e inicializadores de colecciones
- Introducción a LINQ: Where, Select, OrderBy, Take/Skip y ejecución diferida