Para el que no le funciono la clase List<>, es porque falta una referencia al principio del archivo
using System.Collections.Generic;
Introducción a C#
Programación en C#: Desarrollo de Aplicaciones y Videojuegos
Instalación y uso básico de Visual Studio Community para C#
Comparación de Visual Studio 2019 y 2022 con .NET 3.1 y 6
Programación en C# con Visual Studio: Primeros Pasos
Creación de Aplicaciones Gráficas con WPF en Visual Studio
Organización de Código en C Sharp: Uso de Namespaces y Clases
Lógica de programación
Tipos de Datos en C: Enteros, Booleanos, Flotantes y Cadenas
Variables y Conversión de Datos en C#
Cadenas de Caracteres: Uso y Manipulación Básica en Programación
Operadores Aritméticos y Tipos de Datos en C#
Operadores Lógicos: Uso y Ejemplos en Programación
Operadores Relacionales en Programación: Comparación de Valores
Lectura de datos del usuario en consola con Console.ReadLine
Uso de Arreglos en C para Organizar Datos de Cafetería
Manipulación de Listas en C: Creación, Modificación y Uso Práctico
Uso de Métodos en C# para Generar Números Aleatorios
Métodos de Strings en C#: Uso y Ejemplos Prácticos
Creación de Métodos en C# para Operaciones Matemáticas
Bucles y estructuras de control en C#
Uso de la sentencia if para decisiones en programación
Uso de la sentencia Switch en C#
Ciclo For: Uso y Ejemplos Prácticos en Programación
Ciclos While y Do While en C#: Uso y Ejemplos Prácticos
Proyecto
Sistema de Reservación para Restaurante de 10 Mesas en C#
Búsqueda y Registro en Arrays con C#
Refactorización de Código en C#: Mejora y Eficiencia
Tus siguientes pasos con C#
Programación Orientada a Objetos con C#
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
En programación, las listas son estructuras más dinámicas y flexibles que los arrays. Mientras que un array tiene una longitud fija, las listas permiten añadir, quitar y modificar elementos de forma sencilla. Considera una lista de pedidos en un restaurante como ejemplo: si un miembro de la familia cambia de opinión, puedes quitar o agregar elementos sin problemas. Además, las listas te permiten buscar elementos por índice o por su valor directamente, algo que no es posible con los arrays. A continuación, vamos a detallar cómo trabajar con listas en C.
Para definir una lista en C, utilizamos la palabra clave List
, especificando el tipo de datos que almacenará. Observemos el siguiente código:
List<string> tacoShoppingList = new List<string>();
Aquí estamos declarando una lista llamada tacoShoppingList
que almacenará cadenas de caracteres. El uso de <string>
indica que nuestros elementos serán de tipo string
.
Utilizar el método .Add
es la manera más sencilla de agregar elementos:
tacoShoppingList.Add("Cinco tacos de suadero");
tacoShoppingList.Add("Cuatro tacos de tripa");
tacoShoppingList.Add("Cinco tacos de pastor");
tacoShoppingList.Add("Cuatro Coca-Colas");
Este método permite incluir cualquier cadena deseada, ya sea "tacos" u otras bebidas.
Para imprimir tus listas, utiliza un bucle for
y el método Console.WriteLine
. Esto te permitirá acceder y mostrar cada elemento por índice:
for (int i = 0; i < tacoShoppingList.Count; i++)
{
Console.WriteLine(tacoShoppingList[i]);
}
El uso de tacoShoppingList.Count
permite iterar a través de todos los elementos de la lista, garantizando que se impriman en el orden correcto.
Las listas en C ofrecen varios métodos para modificar su contenido:
Para remover un elemento específico, utiliza el método .Remove
:
tacoShoppingList.Remove("Cinco tacos de suadero");
Recuerda que la comparación de cadenas es sensible a mayúsculas, así que asegúrate de que el texto coincida exactamente.
C además ofrece otros métodos útiles para trabajar con listas:
Estos métodos son esenciales para gestionar listas de forma eficiente y dinámica.
Al entender cómo funcionan las listas y sus ventajas sobre los arrays, estarás mejor preparado para solucionar problemas de almacenamiento y manipulación de datos en tus proyectos de programación en C. ¡Continúa explorando y experimentando con listas para mejorar tus habilidades!
Aportes 41
Preguntas 9
Para el que no le funciono la clase List<>, es porque falta una referencia al principio del archivo
using System.Collections.Generic;
Esta clase solo me dió hambre :c
Las listas cumplen la misma funcionalidad que un array almacenar información. Los array lo utilizaremos para almacenar información que no cambiará o será en casos particulares. En cambio una Lista se utilizará para la información que se vaya modificando constantemente (por eso utilizaremos los métodos provenientes de la clase list).
Otra forma de recorrer las listas sería utilizando el ,metodo ForEach de las listas y las expresiones lambda o funciones anonímas, siguiendo los ejemplos (soy de Venezuela y me encantan las arepas):
List<string> tacoShoppingList = new List<string>();
tacoShoppingList.Add(“4 arepas de reina pepiada”);
tacoShoppingList.Add(“5 arepas peludas”);
tacoShoppingList.Add(“4 arepas sifrinas”);
tacoShoppingList.Add(“2 arepas viudas”);
for (int i = 0; i < tacoShoppingList.Count; i++)
{
Console.WriteLine(tacoShoppingList[i]);
}
Console.WriteLine("---------------------");
tacoShoppingList.RemoveAt(3); //Sin relleno no gusta
tacoShoppingList.ForEach((x) => Console.WriteLine(x));
Console.WriteLine("---------------------");
Creo que este articulo podría ayudar a profundizar el tema.
https://bugeados.com/programacion/csharp/listas-en-csharp/
Codigo de la Clase
static void Main(string[] args)
{
List<string> tacoShoppingList = new List<string>();
tacoShoppingList.Add("1 Taco de suadero");
tacoShoppingList.Add("2 Tacos de Pastror");
tacoShoppingList.Add("3 Tacos de campechano");
tacoShoppingList.Add("4 Coca Colas");
for(int i=0; i< tacoShoppingList.Count; i++)
{
Console.WriteLine(tacoShoppingList[i]);
}
Console.WriteLine(" ");
tacoShoppingList.RemoveAt(0);
for (int i = 0; i < tacoShoppingList.Count; i++)
{
Console.WriteLine(tacoShoppingList[i]);
}
Console.ReadLine();
}
Si pican ctrl + D se duplica la línea en la que están
para no escribir tanto use CTRL + D en cada .Add para copiar toda la linea.
Que triste no ver uno de birria 😦
Una manera de ahorrar tiempo a la hora de mostrar la lista es creando un método.
static void Main(string[] Args)
{
list<string> tacosShoppingList = new List<string>();
tacosShoppingList.Add("Tacos de suadero");
MostrarElementos(tacosShoppingList);
}
public static void MostrarElementos(List<string> lista1)
{
for(int i = 0; i < lista1.Count; i++)
{
Console.WriteLine("{0}", lista1.[i]);
}
}
Aquí hice el ejercicio un poco más interactivo, pues dejé que el usuario pueda llenar la lista y se imprima en limpio. Aún me falta trasladarlos a diferentes casos, en donde el usuario quiera seguir llenando la lista o quiera parar con el llenado.
Aqui les dejo un link donde podran ver las diferentes funciones que ofrece la clase List<>
https://csharp.net-tutorials.com/es/389/collections-colecciones/lists-listas/
Al buscar el error, se me hizo mucho más sencillo hacer referencia al elemento que quería remover:
tacoShoppingList.Remove(tacoShoppingList[0]);
Y funcionó perfectamente.
Como lo menciona un compañero ya en aportes, si te genera error la clase List<> es porque tu VS no te agrega automaticamente las referencias, pero puedes añadirla manualmente al inicio de tu código:
using System.Collections.Generic;
Y listo! con eso debería funcionar.
Las listas en C# son una colección dinámica de elementos, similares a los arreglos, pero con algunas características adicionales. Se pueden utilizar para almacenar cualquier tipo de datos, y su tamaño puede cambiar dinámicamente en tiempo de ejecución.
Para usar una lista, se debe importar el espacio de nombre System.Collections.Generic
y se declara con la siguiente sintaxis:
List<TipoDeDato> nombreLista = new List<TipoDeDato>();
List<int> myList = new List<int>(); // Ejemplo
se pueden agregar elementos a la lista con el metodo Add()
myList.Add(1);
myList.Add(2);
myList.Add(3);
También se pueden inicializar con valores al momento de declarar
List<int> myList = new List<int>() {1, 2, 3, 4, 5};
Para acceder a un elemento específico de la lista se utiliza el índice, que comienza en 0, igual que en los arreglos. Por ejemplo:
List<int> myList = new List<int>() {1, 2, 3, 4, 5};
int thirdElement = myList[2]; // thirdElement es igual a 3
Las listas tienen muchos métodos y propiedades útiles, como Count
, que devuelve la cantidad de elementos en la lista, o Sort()
que ordena los elementos de la lista.
List<int> myList = new List<int>() {5, 3, 8, 1, 4};
int listCount = myList.Count; // listCount es igual a 5
myList.Sort(); //myList es ahora {1,3,4,5,8}
Además, las listas proporcionan una interfaz similar a los arreglos, lo que facilita su uso en muchas situaciones.
🎉✨"The best and funniest contribution of the day is: Chunchullo.🤣🤣
En Colombia a esa tripa le llamamos Chunchurria o Chinchulín 😃
estoy encantada con este curso me enamore de la programación !!!
<code>
¡Larga vida al chunchullo!
Agregando los precios usando otra lista de tipo Double 😄
internal class Program
{
private static void Main(string[] args)
{
List<string> tacoShopping = new List<string>();
tacoShopping.Add("Suaperro");
tacoShopping.Add("Tripa");
tacoShopping.Add("Pastor");
tacoShopping.Add("Vegetales (Vegano)");
List<Double> preciosTacos = new List<Double>();
preciosTacos.Add(5.50);
preciosTacos.Add(4.50);
preciosTacos.Add(5.00);
preciosTacos.Add(8.50);
for (int i = 0; i < tacoShopping.Count; i++)
{
Console.WriteLine("Taco de {0} : {1}", tacoShopping[i], preciosTacos[i]);
}
}
}
Si usas una version mas antigua que la Visual Studio Com 2022, tienes que escribir esto arriba en las librerias.
using System.Collections.Generic;
Se obtiene el valor de la posicion indicada por el indice no con parentesis, sin con corchetes
El equivalente a “tacos de Tripa, en colombia”
List<string> tacoShopingList = new List<string>();
tacoShopingList.Add("Tacos de Chunchurría");
**#nuncaparesdeaprender? ** 😅
Para los que no les funcionó el Console.WriteLine por usar using System.Collections.Generic, deben ponerlo así:
System.Console.WriteLine(tacoShoppingList[i]);
Agt el chunchullo ❤️
Para el que se pregunte la diferencia entre “Add” y “Append”, es la siguiente:
-El método “Add” añade un elemento al final de la lista original.
-El método “Append” crea una nueva lista, copiando los datos de la original y añadiendo al final el nuevo elemento, por lo que no modifica la lista original. El método no devuelve una lista directamente, por lo que es necesario convertir el resultado en una lista, utilizando el método “ToList”.
Posiblemente quede más claro con un ejemplo:
List<string> list = new List<string>();
list.Add("Pepe");
list.Add("Laura");
List<string> newList = list.Append("Julio").ToList();
for (int i = 0; i < list.Count; i++) {
Console.WriteLine(list[i]);
}
Console.WriteLine("------");
for (int i = 0; i < newList.Count; i++) {
Console.WriteLine(newList[i]);
}
Les comparto mi codigo:
using System;
namespace _15_Listas
{
internal class Program
{
static void Main()
{
List<string> listFood = new List<string>();
listFood.Add("Hotdog");
listFood.Add("Hamburguesa");
listFood.Add("Papas fritas");
listFood.Add("Pizza");
foreach (var item in listFood)
{
Console.WriteLine($"Alimento: { item }");
}
Console.WriteLine("\n");
listFood.Remove("Pizza"); // Elimina un elemento de la lista por su valor almacenado
foreach (var item in listFood)
{
Console.WriteLine($"Alimento: { item }");
}
Console.WriteLine("\n");
listFood.RemoveAt(2); // Elimina un elemento de la lista por su indice dentro de la lista
foreach (var item in listFood)
{
Console.WriteLine($"Alimento: { item }");
}
}
}
}
Y el resultado en consola:
Alimento: Hamburguesa
Alimento: Papas fritas
Alimento: Pizza
Alimento: Hotdog
Alimento: Hamburguesa
Alimento: Papas fritas
Alimento: Hotdog
Alimento: Hamburguesa
using System;
using System.Collections.Generic;
namespace _12ListExampleProject
{
internal class Program
{
static void Main(string[] args)
{
List<string> tacoShoppingList = new List<string>();
tacoShoppingList.Add("5 Tacos de suadero");
tacoShoppingList.Add("Cuatro tacos de tripa");
tacoShoppingList.Add("Cinco tacos de pastor");
tacoShoppingList.Add("Cuatro Coca Colas");
//Count un conteo, de todos los elementos de nuestra lista tacoShoppingList
for(int i = 0; i < tacoShoppingList.Count; i++)
{
Console.WriteLine(tacoShoppingList[i]);
}
Console.WriteLine("-------------------------");
//Quita un elemento de nuestra lista, es preferible eliminar eementos por Indice y no por strings
//tacoShoppingList.Remove("5 Tacos de suadero");
tacoShoppingList.RemoveAt(0);
for (int i = 0; i < tacoShoppingList.Count; i++)
{
Console.WriteLine(tacoShoppingList[i]);
}
}
}
}
Hay el error que muestra el profe,es que un string con una t minuscula es diferente una T mayuscula.
Tambien puedes imprimirlo asi :3
using System;
using System.Collections.Generic;
namespace Strings
{
class Program
{
static void Main(string[] args)
{
List<string> tacoShoppingList = new List<string>();
tacoShoppingList.Add("Cinco tacos de suadero");
tacoShoppingList.Add("Cinco tacos de pastor");
tacoShoppingList.Add("4 sodas");
foreach(string elem in tacoShoppingList)
{
Console.WriteLine(elem);
}
}
}
}
Remove("") Remove(0) Eliminan elementos de la Lista.
Ejemplo con tacos, el besto ejemplo .👍🏽
Repasando ando
Console.WriteLine("Hello, Tacos DBZ!\n");
List<string> tacoShopingList = new List<string>();
tacoShopingList.Add("Cinco Tacos de suadero");
tacoShopingList.Add("Cuatro Tacos de tripa");
tacoShopingList.Add("Cinco Tacos de pastor");
tacoShopingList.Add("Cuatro Coca Colas");
for (int i = 0; i < tacoShopingList.Count; i++)
Console.WriteLine(".Product: " + tacoShopingList[i]);
tacoShopingList.Add("Cinco Cervezas");
tacoShopingList.Remove("Cinco Tacos de suadero");
Console.WriteLine("\nHello, Tacos DBZ!\n");
for (int i = 0; i < tacoShopingList.Count; i++)
Console.WriteLine("Product: " + tacoShopingList[i]);
tacoShopingList.Add("Papas Fritas");
tacoShopingList.RemoveAt(1);
Console.WriteLine("\nHello, Tacos DBZ!\n");
for (int i = 0; i < tacoShopingList.Count; i++)
Console.WriteLine("Product: " + tacoShopingList[i]);
Interesante la diferencia de recorrer un array versus una lista en un ciclo for.
Listas son Arrays con esteroides.
faltó el taco de cochinita
En las clases donde Ricardo está sentado con su Laptop en este fondo verde y tiene VS22 noto algunos errores de edición que no están presentes en las clases donde está sentado en una sala y usa VS19.
Buena clase!
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?