Vector y ArrayList en Java
Tanto ArrayList
como Vector
implementan la interfaz de lista, y ambos pueden usarse como matrices para la estructura de datos interna. Pero aunque en su mayoría son iguales, tienen sus diferencias.
La sincronización es la diferencia más significativa entre ArrayList
y Vectores. Entre ellos, el Vector
está sincronizado, lo que significa que solo un hilo puede acceder a él a la vez.
Por otro lado, el ArrayList
no está sincronizado; varios subprocesos pueden acceder a él simultáneamente.
Si comparamos el ArrayList
y el Vector
en términos de rendimiento, entonces el ArrayList
es mucho más rápido que el Vector
porque solo un subproceso puede trabajar en un vector a la vez.
La mayoría de los programadores profesionales admiten el uso de ArrayList
en lugar de Vector
porque ArrayList
se puede sincronizar.
Este artículo discutirá el uso de ArrayList
y Vector
. Además, veremos ejemplos y explicaciones necesarias para facilitar el tema.
Vector y ArrayList
en Java
En nuestro ejemplo a continuación, ilustramos tanto el ArrayList
como el Vector
. Declararemos tanto el ArrayList
como el Vector
, agregaremos algunos elementos e imprimiremos el elemento que les agregamos.
Eche un vistazo a nuestro código de ejemplo a continuación.
// Importing necessary packages.
import java.io.*;
import java.util.*;
public class JavaArraylist {
public static void main(String[] args) {
// Creating an ArrayList with the type "String"
ArrayList<String> MyArrayList = new ArrayList<String>();
// Adding elements to arraylist
MyArrayList.add("This is the first string element.");
MyArrayList.add("This is the second string element.");
MyArrayList.add("This is the third string element.");
MyArrayList.add("This is the fourth string element.");
// Traversing the elements using Iterator from the MyArrayList
System.out.println("The arrayList elements are:");
Iterator Itr = MyArrayList.iterator();
while (Itr.hasNext()) System.out.println(Itr.next());
// Creating a Vector with the type "String"
Vector<String> MyVectorList = new Vector<String>();
MyVectorList.addElement("Designing");
MyVectorList.addElement("Planning");
MyVectorList.addElement("Coding");
// Traversing the elements using Enumeration from the MyVectorList
System.out.println("\nThe Vector elements are:");
Enumeration enm = MyVectorList.elements();
while (enm.hasMoreElements()) System.out.println(enm.nextElement());
}
}
Expliquemos el código. Ya comentamos el propósito de cada línea.
En nuestro ejemplo anterior, primero creamos un ArrayList
llamado MyArrayList
y luego agregamos algunos elementos de cadena. Después de eso, imprimimos todos los elementos de MyArrayList
usando el Iterator
.
Ahora creamos una VectorList
llamada MyVectorList
. Luego le agregamos algunos elementos de cadena e imprimimos los elementos de MyVectorList
usando la Enumeración
.
Después de ejecutar el ejemplo anterior, obtendrá un resultado como el que se muestra a continuación.
The arrayList elements are:
This is the first string element.
This is the second string element.
This is the third string element.
This is the fourth string element.
The Vector elements are:
Designing
Planning
coding
Si está trabajando en un proyecto de subprocesos múltiples, entonces ArrayList
será su mejor opción.
Tenga en cuenta que los ejemplos de código compartidos aquí están en Java y debe instalar Java en su entorno si su sistema no contiene Java.
Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.
LinkedIn