Java: la clase vectorial

Vector implementa una matriz dinámica. Es similar a ArrayList, pero con dos diferencias:

  • El vector está sincronizado.

  • Vector contiene muchos métodos heredados que no forman parte del marco de colecciones.

Vector resulta muy útil si no conoce el tamaño de la matriz de antemano o simplemente necesita una que pueda cambiar de tamaño durante la vida útil de un programa.

A continuación se muestra la lista de constructores proporcionada por la clase de vector.

No Señor. Constructor y descripción
1

Vector( )

Este constructor crea un vector predeterminado, que tiene un tamaño inicial de 10.

2

Vector(int size)

Este constructor acepta un argumento que es igual al tamaño requerido y crea un vector cuya capacidad inicial se especifica por tamaño.

3

Vector(int size, int incr)

Este constructor crea un vector cuya capacidad inicial se especifica por tamaño y cuyo incremento está especificado por incr. El incremento especifica el número de elementos a asignar cada vez que se cambia el tamaño de un vector hacia arriba.

4

Vector(Collection c)

Este constructor crea un vector que contiene los elementos de la colección c.

Además de los métodos heredados de sus clases principales, Vector define los siguientes métodos:

No Señor. Método y descripción
1

void add(int index, Object element)

Inserta el elemento especificado en la posición especificada en este vector.

2

boolean add(Object o)

Agrega el elemento especificado al final de este vector.

3

boolean addAll(Collection c)

Agrega todos los elementos de la colección especificada al final de este vector, en el orden en que son devueltos por el iterador de la colección especificada.

4

boolean addAll(int index, Collection c)

Inserta todos los elementos de la colección especificada en este vector en la posición especificada.

5

void addElement(Object obj)

Agrega el componente especificado al final de este vector, aumentando su tamaño en uno.

6

int capacity()

Devuelve la capacidad actual de este vector.

7

void clear()

Elimina todos los elementos de este vector.

8

Object clone()

Devuelve un clon de este vector.

9

boolean contains(Object elem)

Comprueba si el objeto especificado es un componente de este vector.

10

boolean containsAll(Collection c)

Devuelve verdadero si este vector contiene todos los elementos de la colección especificada.

11

void copyInto(Object[] anArray)

Copia los componentes de este vector en la matriz especificada.

12

Object elementAt(int index)

Devuelve el componente en el índice especificado.

13

Enumeration elements()

Devuelve una enumeración de los componentes de este vector.

14

void ensureCapacity(int minCapacity)

Aumenta la capacidad de este vector, si es necesario, para garantizar que pueda contener al menos el número de componentes especificado por el argumento de capacidad mínima.

15

boolean equals(Object o)

Compara el objeto especificado con este vector para determinar la igualdad.

dieciséis

Object firstElement()

Devuelve el primer componente (el elemento en el índice 0) de este vector.

17

Object get(int index)

Devuelve el elemento en la posición especificada en este vector.

18

int hashCode()

Devuelve el valor del código hash para este vector.

19

int indexOf(Object elem)

Busca la primera aparición del argumento dado, probando la igualdad utilizando el método equals.

20

int indexOf(Object elem, int index)

Busca la primera aparición del argumento dado, comienza la búsqueda en el índice y prueba la igualdad utilizando el método equals.

21

void insertElementAt(Object obj, int index)

Inserta el objeto especificado como un componente en este vector en el índice especificado.

22

boolean isEmpty()

Prueba si este vector no tiene componentes.

23

Object lastElement()

Devuelve el último componente del vector.

24

int lastIndexOf(Object elem)

Devuelve el índice de la última aparición del objeto especificado en este vector.

25

int lastIndexOf(Object elem, int index)

Busca hacia atrás el objeto especificado, comenzando por el índice especificado, y le devuelve un índice.

26

Object remove(int index)

Elimina el elemento en la posición especificada en este vector.

27

boolean remove(Object o)

Elimina la primera aparición del elemento especificado en este vector. Si el vector no contiene el elemento, no se modifica.

28

boolean removeAll(Collection c)

Elimina de este vector todos sus elementos contenidos en la Colección especificada.

29

void removeAllElements()

Elimina todos los componentes de este vector y establece su tamaño en cero.

30

boolean removeElement(Object obj)

Elimina la primera aparición (con el índice más bajo) del argumento de este vector.

31

void removeElementAt(int index)

removeElementAt (índice int).

32

protected void removeRange(int fromIndex, int toIndex)

Elimina de esta Lista todos los elementos cuyo índice está entre fromIndex, inclusive y toIndex, exclusivo.

33

boolean retainAll(Collection c)

Conserva solo los elementos de este vector que están contenidos en la colección especificada.

34

Object set(int index, Object element)

Reemplaza el elemento en la posición especificada en este vector con el elemento especificado.

35

void setElementAt(Object obj, int index)

Establece que el componente en el índice especificado de este vector sea el objeto especificado.

36

void setSize(int newSize)

Establece el tamaño de este vector.

37

int size()

Devuelve el número de componentes de este vector.

38

List subList(int fromIndex, int toIndex)

Devuelve una vista de la parte de esta lista entre fromIndex, inclusive y toIndex, exclusivo.

39

Object[] toArray()

Devuelve una matriz que contiene todos los elementos de este vector en el orden correcto.

40

Object[] toArray(Object[] a)

Devuelve una matriz que contiene todos los elementos de este vector en el orden correcto; el tipo de tiempo de ejecución de la matriz devuelta es el de la matriz especificada.

41

String toString()

Devuelve una representación de cadena de este vector, que contiene la representación de cadena de cada elemento.

42

void trimToSize()

Recorta la capacidad de este vector para que sea el tamaño actual del vector.

Ejemplo

El siguiente programa ilustra varios de los métodos admitidos por esta colección:

import java.util.*;
public class VectorDemo {

   public static void main(String args[]) {
      // initial size is 3, increment is 2
      Vector v = new Vector(3, 2);
      System.out.println("Initial size: " + v.size());
      System.out.println("Initial capacity: " + v.capacity());
      
      v.addElement(new Integer(1));
      v.addElement(new Integer(2));
      v.addElement(new Integer(3));
      v.addElement(new Integer(4));
      System.out.println("Capacity after four additions: " + v.capacity());

      v.addElement(new Double(5.45));
      System.out.println("Current capacity: " + v.capacity());
      
      v.addElement(new Double(6.08));
      v.addElement(new Integer(7));
      System.out.println("Current capacity: " + v.capacity());
      
      v.addElement(new Float(9.4));
      v.addElement(new Integer(10));
      System.out.println("Current capacity: " + v.capacity());
      
      v.addElement(new Integer(11));
      v.addElement(new Integer(12));
      System.out.println("First element: " + (Integer)v.firstElement());
      System.out.println("Last element: " + (Integer)v.lastElement());
      
      if(v.contains(new Integer(3)))
         System.out.println("Vector contains 3.");
         
      // enumerate the elements in the vector.
      Enumeration vEnum = v.elements();
      System.out.println("\nElements in vector:");
      
      while(vEnum.hasMoreElements())
         System.out.print(vEnum.nextElement() + " ");
      System.out.println();
   }
}

Esto producirá el siguiente resultado:

Salida

Initial size: 0
Initial capacity: 3
Capacity after four additions: 5
Current capacity: 5
Current capacity: 7
Current capacity: 9
First element: 1
Last element: 12
Vector contains 3.

Elements in vector:
1 2 3 4 5.45 6.08 7 9.4 10 11 12