1 / 20

Lenguaje de Programación .Net LDP3501: Visual Studio .Net 2008

Lenguaje de Programación .Net LDP3501: Visual Studio .Net 2008 Manejo de Colecciones y Listas: ArrayList , List <T>, Hashtable y Diccionarios. Colecciones y Listas. Datos agrupados. Arreglos de variables. 0,0. 0,1. 0,0. 0,1. 0,2. 0,3. 0. 1,0. 1,1. 1,2. 1,3. 1,0. 1,1. 1,2.

sheryl
Download Presentation

Lenguaje de Programación .Net LDP3501: Visual Studio .Net 2008

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lenguaje de Programación .Net LDP3501: Visual Studio .Net 2008 Manejo de Colecciones y Listas: ArrayList, List<T>, Hashtable y Diccionarios

  2. Colecciones y Listas • Datos agrupados. • Arreglos de variables. 0,0 0,1 0,0 0,1 0,2 0,3 0 1,0 1,1 1,2 1,3 1,0 1,1 1,2 1,3 1 2,0 2,1 2,2 2,0 2,1 2,2 2,3 2 3,0 3,1 3,2 3,3 3 /* Crea un arreglos de números de 3 posiciones */ int[] números = new int[3];

  3. Colecciones y Listas • Colecciones especializadas. • System.Collections y System.Collections.Generics. • Facilidades de manejo: Agregar, Ordenar, Eliminar, Insertar y Recuperar. • Clases ArrayList y List<T>. • Versiones sofisticadas de una matriz.

  4. Colecciones y Listas • La capacidad de Array es fija, mientras que la capacidad de ArrayList o List(T) se amplía automáticamente si es necesario. • ArrayList y List(T) proporcionan métodos para agregar, insertar o quitar un intervalo de elementos. En una colección Array, sólo puede obtener o establecer un valor para un elemento cada vez.

  5. Colecciones y Listas • Se puede establecer el límite inferior de Array, pero el límite inferior de ArrayList o List(T) siempre es cero. • Array puede tener varias dimensiones, mientras que ArrayList o List(T) siempre tienen una dimensión exactamente. • ArrayList almacena elemntos de tipo Object. List trabaja con seguridad de tipos

  6. Colecciones y Listas Declaración ArrayList nombre = new ArrayList (); List<tipo> nombre = new List<tipo>(); Ejemplo using System; using System.Collections.Generic; public class Lista { List‹string› listacolores = new List‹string›(); }

  7. Colecciones y Listas Añadir elementos List‹string› ListaColores = new List‹string›(); ListaColores.Add ("Azul"); ListaColores.Add ("Rojo"); ListaColores.Add ("Verde"); ListaColores.Add ("Amarillo"); ListaColores.Add ("Morado"); Acceso a los elementos Console.WriteLine (ListaColores[1]); ListaColores[2] = "Negro";

  8. Colecciones y Listas Acceso mediante ciclo foreach /* Mostrar todos los colores de la lista */ foreach (string color in ListaColores) { Console.WriteLine ( color ); } Insertarelementos ListaColores.Insert(2, "Blanco");

  9. Colecciones y Listas Ordenamiento de la lista ListaColores.Sort(); Búsqueda de elementos ListaColores.Contains(“Amarillo”); // true ListaColores.IndexOf("Amarillo")); // 3 ListaColores[ListaColores.IndexOf("Amarillo")] = "Negro";

  10. Colecciones y Listas Información de elementos Borrado de elementos ListaColores.Count; ListaColores.Clear(); ListaColores.RemoveAt(2); ListaColores.Remove(“Amarillo”);

  11. Colecciones y Listas Actividad 1: Manejo de ArrayList

  12. Colecciones y Listas Tipos Genéricos (Generics) • Incluidos en la versión 2.0 • Concepto de parámetros de tipo <T>. • Reusabilidad, seguridad de tipos y eficacia. • Mejora el rendimiento al no estar trabajando con elementos Object (boxing y unboxing).

  13. Colecciones y Listas Problema de la agrupación no tipada. System.Collections.ArrayList lista = new System.Collections.ArrayList(); // Agrega un número. lista.Add(3); // Agrega una cadena. lista.Add("Azul"); int t = 0; // Esto causa una excepción del tipo InvalidCastException. foreach (int x in lista) { t += x; }

  14. Colecciones y Listas Problema de la agrupación no tipada. // Declara una lista genérica para tipos enteros List<int> lista = new List<int>(); // Sin boxing ni casting: lista.Add(3); // Esto daría un error de compilación al chequear el tipo: // lista.Add("Azul");

  15. Colecciones y Listas Actividad 2: Manejo de Listas Genéricas

  16. Colecciones y Listas Hashtables • Asignación de una clave para acceder a los elementos. • Implementación de IDictionary. • Manejo de sectores de almacenamiento para rápido acceso. • Elementos de componen del un par clave-valor. • Instancias de DictionaryEntry.

  17. Colecciones y Listas Declaración Agregar elementos Hashtable nombre = new Hashtable(); Hashtablecoleccion = new Hashtable(); for (i=0; i < 5; i++) { coleccion.Add(i, string.Format(“Elemento {0}”, i)); }

  18. Colecciones y Listas /* Mostrar todos los colores de la lista */ foreach(DictionaryEntry entrada in ListaColores) { Console.WriteLine ( entrada.Key); Console.WriteLine ( entrada.Value); } Acceso mediante ciclo foreach Validación de llaves stringllave = “Uno”; if (coleccion.ContainsKey(llave)) { Console.WriteLine(“Llave existe”); }

  19. Colecciones y Listas Actividad 3: Manejo de Hashtable

More Related