El documento presenta información sobre la clase Vector en Java. Explica que Vector permite almacenar elementos de forma dinámica y ofrece métodos para insertar, eliminar y buscar elementos. También describe métodos específicos como addElement(), firstElement(), lastElement(), elementAt() e insertElementAt(). Por último, incluye ejemplos de código que ilustran el uso de estos métodos.
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
Vector Java clase
1. FUNDACIÓN DE EDUCACIÓN SUPERIOR SAN JOSÉ
PRESENTADO POR:
VANESSA ESTEFANIA CORREDOR ANDRADE
INGENIERIA DE SISTEMAS
GRUPO B2
2016
2. Contenido
1. La clase Vector 3
Vector 4
2. Métodos de la clase vector 12
Tercer punto 13
Bibliografía 15
3. 1. La clase Vector
La clase Vector describe un Array con largo variable. Objetos de la clase Vector son representados
en una lista lineal. La lista puede contener elementos de diverso Typs, su largo es variable (Array con
variable Largo). Vector permite insertar elementos en cualquier lugar. JDK realizó Vector como
Array de elementos de tipo Object.
Crear Nuevo Vector (Constructor):
public Vector()
public Vector(int initialCapacity, int capacityIncrement)
// Un vector se agranda en forma automática, en el caso que sean incorporados más elementos a lo
planificado,(Resizing). Por eso que initialCapacity y capacityIncrement, deben ser bien escogidos.
Insertar elementos: public void addElement(Object obj)
// añadir al final de la lista de Elementos.
Propiedades:
public boolean isEmpty()
// probar, si el vector esta vacío.
public int size()
// se asegura con el nº de elementos.
public int capacity()
// probar el largo del arrays. Ud. Puede asegurarse con Capacity() para cambiarla.
Añadir en cualquier lugar, al interior de la lista.:
public void insertElementAt(Object obj, int index) throws
4. ArrayIndexOutOfBoundsException
// añade un obj en la posición index del "Vector".
Buscar un Elemento: Para la busqueda secuencial esta Iterator a disposición. Pero existen además.:
public Object firstElement() throws NoSuchElementException;
public Object lastElement() throws NoSuchElementException;
public Object elementAt(int index) throws ArrayIndexOutOfBoundException;
firstElement() entrega el primero, lastElement() el último Elemento- Con elementAt() se busca el
Elemento de la posición index.
5. Vector
<<
Constructoren >>
public Vector()
// Un Vector será declarado.
public Vector(int startCapacity)
// Un Vector contiene espacio para startCapacity Elementos
public Vector(int startKapazitaet, int kapazitaetsSchrittweite)
<< Metodos >>
public Object elementAt(int index)
// el objeto que se encuentra en index será devuelto.
6. public int size()
public Object firstElement()
public Object lastElement();
public void insertElementAt(Object obj, int index)
public void setElementAt(Object obj, int index)
public copyInto(Object miArray[])
// Copia el Elemento del Vector en el Array miArray
// en el caso que no lo permita, se genera una IndexOutOfBoundsException
public boolean contains(Object obj)
// busca los Elementos, entrega true si viene obj en Vector.
public int indexOf(Object obj)
public int lastIndexOf(Object obj)
public boolean removeElement(Object obj)
// elimina obj de la lista.
public void removeElementAt(int index)
// elimina el Elemento del lugar index
public void removeAllElements()
// elimina todos los Elementos
public int capacity()
// entrega cuantos elementos posee Vektor
public Object clone()
public String toString()
La clase Stack
class java.util.Stack extends Vector
Un Stack es una estructura que trabaja bajo el principio LIFO. Elementos son incorporados por delante
y por allí son también eliminados. En Java, Stack es una derivación de Vector con nuevas propiedades.
Constructor: public Stack();
Añadir nuevo Elemento: public Object push(Object item);
Buscar el elemento de más arriba:
public Object pop();
// busca y elimina el elemento de más arriba.
7. public Object peek()
// busca el elemento de más arriba.
Buscar en Stack: public int search(Object o)
// Buscar elemento arbitrario,
// entrega: Distancia entre el elemnto buscado y el elemento de más arriba.
// y –1, en el caso que el elemento no exista.
Test:public boolean empty()
// se asegura si Stack está vacío.
Un Stack es un Vector. Esto significa que funciones, tales como, add(), addAll(),
addElement(), capacity(), clear(), clone(), contains(), copyInto(),
elementAt(), .... .siguen estando a disposición.
Hasta el momento ya aprendió a construir una lista dinámica de datos mediante una lista enlazada.
También podrá utilizar la clase Vector de Java para almacenar los datos. El objeto Vector proporciona
la capacidad a la estructura array de redimensionarla dinamicamente, es decir, es un arreglo
ajustable que puede aumentar o disminuir su tamaño dependiendo del número de elementos que tenga
que guardar, a diferencia de C++, la que debe llamar a la función realloc para aumentar la capacidad
de almacenamiento de un arreglo, mientras que un vector aumenta su tamaño en forma automática
conforme lo necesita. La clase Vector proporciona métodos que permiten insertar, eliminar y buscar
elementos.
Vector miVector = new Vector(15); // miVector es una referencia a un
objeto Vector con una capacidad inicial de 15 elementos.
Vector miVector = new Vector(15, 5); // miVector es una referencia a un
objeto Vector con una capacidad inicial de 15 elementos, y un incremento
de tamaño de 5.
8. Un objeto Vector tiene una capacidad y tamaño.Para determinar la actual capacidad de un Vector use
el método capacity(). Para encontrar el tamaño actual de Vector use el método size().
● La capacity es el numero de slots disponibles.
● El size es el número de slots que tienen los datos en el.
● Slots 0 hasta size-1 tienen datos.
Los elementos de un Vector son accesados usando un indice integer. Como con arrays, el indice es un
valor integer que parte de 0.
El siguiente fragmento crea un vector y le agrega varios elementos String con el método addElement.
Vector lista = new Vector();
lista.addElemet(new String(“Java”));
lista.addElemet(new String(“C”));
lista.addElemet(new String(“C++”));
En algunas ocasiones deberá saber cuantos elementos contiene el vector. En estos casos podrá usar el
método size de la clase Vector. Por ejemplo, usando el fragmento anterior, basta con incorporar
la línea
System.out.println(“número de elementos en la lista = “ + lista.size());
Cuyo resultado debería ser 3.
El ciclo usa el método size() para asegurarse que todo elemento sea accesado. Un Vector tiene datos
en los slots 0 a size()-1. Este programa nos dice el como imprimir los datos de un Vector, aunque
luego se verá que Enumeration facilita la tarea.
EJEMPLOS:
9. Que imprime el programa siguiente?. Analizarlo.
import java.util.* ;
class VectorEg0
{
public static void main ( String[] args)
{
Vector nombres = new Vector( 10 );
nombres.addElement( "Ana" );
nombres.addElement( "Boris” );
nombres.addElement( "Cristian" );
nombres.addElement( "Daniel" );
nombres.addElement( "Elena" );
nombres.addElement( "Federico" );
for ( int j=0; j < nombres.size(); j++ )
System.out.println( j + ": " + nombres.elementAt(j) );
}
}
Que imprime el programa siguiente?. Analizarlo.
import java.util.* ;
class VectorEg1
{
public static void main ( String[] args)
{
Vector nom = new Vector( 10 );
nom.addElement( "Ana" );
nom.addElement( "Boris” );
nom.addElement( "Cristian" );
10. nom.setElementAt( "Sara", 0 );
nom.setElementAt( "Bartolome", 1 );
for ( int j=0; j < nom.size(); j++ )
System.out.println( j + ": " + nom.elementAt(j) );
}
}
Que imprime el programa siguiente?. Analizarlo.
import java.util.* ;
class VectorEg2
{
public static void main ( String[] args)
{
Vector nom = new Vector( 10 );
nom.addElement( "Ana" );
nom.addElement( "Boris” );
nom.addElement( "Cristian" );
nom.addElement( "Debora" );
nom.removeElementAt(2);
for ( int j=0; j < nom.size(); j++ )
System.out.println( j + ": " +
nom.elementAt(j) );
}
}
11. Que imprime este programa? . Analizarlo.
import java.util.* ;
class VectorEg3
{
public static void main ( String[] args)
{
Vector nom = new Vector( 10 );
nom.addElement( "Ana" );
nom.addElement( "Boris" );
nom.addElement( "Cristian" );
nom.addElement( "Debora" );
nom.insertElementAt( "Elena", 2);
for ( int j=0; j < nom.size(); j++ )
System.out.println( j + ": " + nom.elementAt(j) );
}
}
Construya un programa que imprime el primero y el último de un Vector con 4 elementos.
Una posible respuesta es:
12. import java.util.* ;
class VectorEg4
{
public static void main ( String[] args)
{
Vector nom = new Vector( 10 );
nom.addElement( "Ana" );
nom.addElement( "Boris" );
nom.addElement( "Cristian" );
nom.addElement( "Debora" );
System.out.println( nom.firstElement() );
System.out.println( nom.lastElement() );
}
}
También es posible determinar el índice de algún elemento, sino esta entrega –1.
import java.util.* ;
class VectorEg5
{
public static void main ( String[] args)
{
Vector nom = new Vector( 10 );
nom.addElement( "Ana" );
nom.addElement( "Boris" );
nom.addElement( "Cristian" );
nom.addElement( "Debora" );
nom.addElement( "Chris" );
nom.addElement( "Jose" );
System.out.println( nom.indexOf( "Boris" ) ); //1
System.out.println( nom.indexOf( "Elena" ) );//-1
}
}
13. Aunque un objeto Vector es un arreglo de elementos, no es posible acceder a un elemento de un vector
con la sintaxis de corchetes como en arreglos comunes. Para obtener un elemento de un objeto Vector,
puede llamar al método elementAt, cuyo formato es
Object elementAt(int indice);
siendo factible de obtener el primero y último, invocando al método firstElement y
lastElement, respectivamente.
2. Métodos de la clase vector
Concat
Como su nombre sugiere, concatena. Es decir, fusiona 2 Arrays. Esto es bastante simple, pero hay
que tener en cuenta que fusiona 2 Arrays para formar otro.
Join
Muy útil cuando queremos mostrar los Arrays. Lo que hace esconvertir un Array a un String (cadena)
reemplazando las comas por lo que sea que escribamos como parámetro.
Pop
Elimina el último elemento del Array y devuelve ese elemento:
push
Agrega un elemento al final del Array.el push también respeta la estructura de los Arrays
multidimensionales y que devuelve ellargo del Array luego de incluido el/los elementos
Reverse
Como indica su nombre, invierte un Array.Este método devuelve el Array invertido.
shift
14. Elimina el primer elemento del Array.Además, devuelve el elemento eliminado, pero al igual que en
el caso del pop, se puedeprescindir de obtenerlo.
Slice
Este método es un poco más complicado que los anteriores. Lo que hace es tomar elementos de un
Array para ubicarlos en otro, pero sin modificar el Array original. Supongamos que tenemos un
abecedario en un Array: a, b, c, d, e, f, g, h, i, j.....Cada letra se corresponde con un valor numérico.
Entonces, si queremos obtener un Arrayque consista de todas las letras de la c a la i, usamos un slice.
splice
Éste es otro de los métodos complicados. Similar al slice, pero modifica el Array originalborrando
elementos. Además, devuelve los elementos eliminados. A diferencia del slice, loque hacemos es
pasarle el primer índice y el número de elementos a eliminar.
toString
Simplemente, convierte el Array en un String. Podría no resultar muy útil, pero es la mejormanera de
comparar Arrays (recordemos que los Arrays solo eran considerados iguales si unoes la copia del
otro). Si convertimos 2 Arrays a cadenas y las comparamos, vamos a obtenertrue si los 2 Arrays son
iguales
unshift
Similar al push. En este caso, agrega los elementos al principio del Array.al igual que el push, unshift
devuelve el elemento agregado y que respeta los Arrays multidimensionales
Length
Devuelve o modifica el número de elementos de un Array. Podemos usar este método para obtener
cuántos elementos tiene el Array y, también para recortar un Array.
Add
El método add(Objeto) insertara al final del arreglo el objeto que se encuentra entre el paréntesis
firstElement() y lastElement()
Indican el primero y último elemento del vector respectivamente
3.Tercer Punto
package javaapplication3;
15. import java.util.*;
import java.util.Vector;
public class vector extends Vector{
public vector(int size, int incr) {
super (1,1);
}
public void addString (String s) {
addElement (s); }
public static void main(String[] args) {
vector nombredemascota[]= new vector[5];
nombredemascota[0].addElement("copito");
nombredemascota[1].addElement("mimi");
nombredemascota[3].addElement("pluto");
nombredemascota[4].addElement("luna");
System.out.println("hay "+" "+nombredemascota.length+" "+"nombres de mascotas");