190 likes | 364 Views
Facultad de Ingeniería y Arquitectura. Algoritmo y Estructura de Datos I 2006 - I. Sesión 14 - Aplicaciones con La Clase LinkedList. Juan José Montero Román. jmonteror@usmp.edu.pe. Programación Visual usando Listas.
E N D
Facultad de Ingeniería y Arquitectura Algoritmo y Estructura de Datos I 2006 - I Sesión 14 - Aplicaciones con La Clase LinkedList Juan José Montero Román. jmonteror@usmp.edu.pe
Programación Visual usando Listas Ingresar notas de varios alumnos en una lista y mostrarlo a través del componente txaNombre Diseño de la ventana
Colecciones de Objetos: Listas y Mapas • Una vez que se ha creado un array su tamaño no puede cambiarse. • Si se desde ingresar mas elementos habrá que recrearlo caso contrario dará array overflow • El paquete estándar java.util contiene diferentes tipos de clases para mantener colecciones de objetos. • A estas clases se llaman grupalmente Java Collection Framework (JCF). • JCF incluye clases que mantiene colecciones de objetos como: grupos, listas o mapas.
Listas JCF • JCF incluyela interfase Listque soporta métodos para mantener un colección de objetos cómo una lista lineal. Se respeta el orden • Puede haber elementos duplicados L = (l0, l1, l2, . . . , lN) • Podemos: agregar a, remover de y obtener objetos de la lista. • En una lista no hay un límite a la cantidad de objetos que puede contener.
Métodos Listas • Aquí hay 5 de los 25 métodos de listas
Usando Listas • Para usar una lista en un programa, debemos crear una instancia de la clase que implementa la interfase List • Hay dos clases que implementan la interfase List : • ArrayList • LinkedList • La clase ArrayListusa un arreglo para manejar los datos de la lista. • La clase LinkedList usa la técnica llamadarepresentación ligada por nodo (linked-node representation).
Borrar • Para remover un objeto de la lista, se puede usar el método remove() pasándole el índice del elemento como parámetro. • Todos los elem. son movidos una posición en forma automática para llenar el espacio que ha quedado vacío.
Programación Visual usando Listas Ingresar notas de varios alumnos en una lista y mostrarlo a través del componente txaNombre Diseño de la ventana
Programación Visual usando Listas package domListas; import java.util.*; public class PrgListas extends java.awt.Frame { LinkedList enlace; String nom; } private void initialize() { ……………………. // user code begin {2} enlace = new LinkedList(); // user code end }
public void btnAgregar actionPerformed(java.awt.event.ActionEvent e) { nom = txtNombre.getText(); enlace.add(nom); txtNombre.setText(""); txtNombre.requestFocus(); }
public void btnMostrar actionPerformed(java.awt.event.ActionEvent e) { txaNombre.setText("Lista contiene: \n"); for ( int i = 0; i < enlace.size(); i++ ) txaNombre.append( enlace.get( i ) + "\n" ); }
public void btnSalir actionPerformed(java.awt.event.ActionEvent e) { System.exit(0); }
public void contarElementos(){ txaNombre.setText("existen"+enlace.size()+" elementos"); }
public void promedio(){ ……….. }
public void modificar(){ ……….. }