CONTENEDORES - PowerPoint PPT Presentation

1 / 24
About This Presentation
Title:

CONTENEDORES

Description:

Extraer objetos de un contenedor no implica destruir el objeto. ... Cualquier objeto no nulo puede ser usado como clave y elemento. ... – PowerPoint PPT presentation

Number of Views:71
Avg rating:3.0/5.0
Slides: 25
Provided by: Qui106
Category:

less

Transcript and Presenter's Notes

Title: CONTENEDORES


1
CONTENEDORES
Un contenedor es una clase que en su interior
contiene objetos de un tipo dado. Es decir es una
colección de objetos. Los contenedores están
dentro del paquete java.util
2
CONTENEDORES
Extraer objetos de un contenedor no implica
destruir el objeto. Un contenedor puede contener
objetos por valor o por referencia. Contenedor
Contenedor objeto1 objeto1 referencia1
objeto2 objeto2 referencia2
objeto3 objeto3 referencia3

3
CLASIFICACIÓN DE LOS CONTENEDORES
1- ORDENADOS NO ORDENADOS 2- CON ELEMENTOS
REPETIDOS SIN ELEMENTOS REPETIDOS 3- SECUENCIA
L (método de acceso) ALEATORIO
4
OPERACIONES SOBRE EL CONTENEDOR
  • Creación
  • Destrucción

5
SERVICIOS QUE BRINDA EL CONTENEDOR
  • Inserción
  • Extracción
  • Búsqueda
  • Iteración
  • Cardinalidad
  • Vaciado
  • siguiente ( )(para contenedores ordenados)
  • anterior ( )

6
CONTENEDORES O COLECCIONES EN JAVA
El paquete java.util contiene la definición de
las clases contenedores que posee Java. Para
utilizar estas clases se debe importar el paquete
java.util completo o solo el subpaquete que
interese. Es decir se puede colocar import
java.util.Vector import java.util.
7
LA INTERFAZ ENUMERATION
La mayoría de las clases contenedores usan la
interfaz Enumeration para iterar a lo largo de
los elementos de la colección. La interfaz
Enumeration declara dos métodos public abstract
boolean hasMoreElements ( ) devuelve true si la
enumeración contiene más elementos. public
abstract Object nextElement ( ) devuelve el
próximo elemento de la enumeración.
8
LA CLASE VECTOR
La clase Vector nos permite tener un array que
puede variar su tamaño de Object. Se pueden
añadir objetos al comienzo, al final o en el
medio y se puede acceder a cualquier elemento del
vector con un indice de array.
9
MÉTODOS DE LA CLASE VECTOR
  • Hay tres tipos de métodos en Vector
  • Métodos para modificar el vector.
  • Métodos para examinar valores del vector.
  • Métodos que gestionan como crece el vector cuando
    se necesita más capacidad.

10
MÉTODOS PARA MODIFICAR EL VECTOR
  • Todos los métodos que cambian el contenido de un
    vector cambian dinámicamente el tamaño del mismo,
    a excepción de setElementAt.
  • public final synchronized void setElementAt(Object
    obj, int index)
  • hace que el elemento situado en index sea obj.
  • Lanza IndexOutOfBounds sio se da un índice mayor
    que el tamaño actual del vector

11
MÉTODOS PARA MODIFICAR EL VECTOR
  • public final synchronized void
    removeElementAt(int index)
  • borra el elemento situado en index, los elementos
    situados posteriores a index se corren y el
    tamaño del vector disminuye en uno.
  • public final synchronized void insertElementAt(Obj
    ect obj, int index)
  • inserta obj como elemento en la posición index.
    Los elementos del vector son desplazados para
    dejar sitio.

12
MÉTODOS PARA MODIFICAR EL VECTOR
  • public final synchronized void addElement(Object
    obj)
  • agrega obj como último elemento del vector.
  • public final synchronized void
    removeAllElements( )
  • elimina todos los elemntos del vector, dejando al
    mismo vacío.

13
MÉTODOS PARA EXAMINAR EL CONTENIDO DEL VECTOR
  • Estos métodos lanzan una exception
    IndexOutOfBoundsException si se les da un índice
    no válido.
  • public final synchronized Object elementAt( int
    index )
  • devuelve el elemento situado en index.
  • public final boolean contains( Object obj )
  • devuelve true si obj está en vector.

14
MÉTODOS PARA EXAMINAR EL CONTENIDO DEL VECTOR
  • public final synchronized int indexOf( Object
    obj, int index )
  • busca la primera aparición de obj, comenzando por
    la posición que marca index, y devuelve el índice
    que corresponde a obj o -1 si no la encuentra.
  • public final int indexOf( Object obj)
  • equivale a indexOf(obj, 0).
  • public final synchronized void copyInto(Object
    anArray)
  • copia los elementos de este vector en el array
    especificado.

15
MÉTODOS PARA EXAMINAR EL CONTENIDO DEL VECTOR
  • public final synchronized int lastIndexOf(
    Object obj, int index )
  • busca obj hacia atrás, a partir de la posición
    index y devuelve el índice correspondiente a obj
    o -1 si no lo encuentra.
  • public final synchronized Object firstElement( )
  • devuelve el primer elemento. Lanza la excepcion
    NoSuchElementException si el vector está vacío.

16
MÉTODOS PARA EXAMINAR EL CONTENIDO DEL VECTOR
public final synchronized Object lastElement( )
devuelve el último elemento. Lanza la excepcion
NoSuchElementException si el vector está
vacío. public final int size( ) devuelve el
número de elementos del vector. public final
boolean isEmpty( ) devuelve true si el vector
está vacío.
17
MÉTODOS PARA EXAMINAR EL CONTENIDO DEL VECTOR
Public final synchronized Enumeration elements(
) devuelve un Enumeration para para la lista
actual de elementos.
18
MÉTODOS PARA GESTIONAR LA CAPACIDAD DEL VECTOR
Gestionar adecuadamente la capacidad de un vector
afecta su eficiencia. Si se conoce mas o menos
cuántos elementos va a tener el vector es mejor
crearlos con esa cantidad de parámetros y no
hacer crecer el vector cada vez que se le agregan
parámetros. Los parámetros de gestión de la
capacidad se agregan cuando se construye el
vector. Para crear un vector se usan distintos
constructores.
19
CONSTRUCTORES DE VECTOR
public Vector( int initialCapacity, int
capacityIncrement) construye un vector vacío con
la capacidad inicial de almacenamiento y el
incremento de capacidad especificado. Un
incremento de capacidad 0 significa duplicar las
capacidades del búfer para crecer. En caso
contrario al búfer se le agregan
capacityIncrement. public Vector( int
initialCapacity) equivale a tener el segundo
parámetro igual a cero.
20
CONSTRUCTORES DE VECTOR
public Vector( ) construye un vector vacío con
la capacidad inicial por defecto y un incremento
de capacidad 0. public final int
capacity() devuelve la capacidad actual del
vector. public final synchronized void
ensureCapacity(int minCapacity) garantiza que el
vector tiene como mínimo lacapacidad especificada.
21
LA CLASE DICTIONARY
Es una clase abstracta . Define un conjunto de
métodos abstractos para almacenar un elemento
indexado por una clave y recuperarlo usando esa
clave. Cualquier objeto no nulo puede ser usado
como clave y elemento. Dictionary devuelve null
para indicar cosas como que no es capaz de
recuperar determinada clave, de modo que la clave
ni su elemento pueden ser null. Si se proporciona
un argumento null de clave o elemento se obtiene
una excepción NullPointerException
22
LOS MÉTODOS DE DICTIONARY
public abstract Object put( Object key, Object
element) pone element en el diccionario bajo
key. Devuelve el elemento antiguo bajo key o null
si no había ninguno. public abstract Object get(
Object key) devuelve el objeto que se asocia con
key o null si key no estaba definido. public
abstract Object remove( Object key) elimina el
elemento asociado con key, retornando dicho
elemento o null si key no estaba definido.
23
LOS MÉTODOS DE DICTIONARY
public abstract int size( ) devuelve el número
de elementos definidos en el diccionario. public
abstract boolean isEmpty( ) devuelve true si el
diccionario no contiene ningún elemento.
24
LA CLASE HASHTABLE
Una Hashtable es una implementación concreta de
un Dictionary. Se puede utilizar una instancia de
hashtable para almacenar objetos arbitrarios que
están indexados por cualquier otro objeto
arbitrario. La utilización más habitual de una
hashtable es utilizar una String como clave para
almacenar objetos como valores
Write a Comment
User Comments (0)
About PowerShow.com