¿Qué es Array y ArrayList?

Array y ArrayList son estructuras de datos indexadas que se usan comúnmente en aplicaciones Java. En general, ArrayList es compatible con nodos internos, pero comprender la diferencia entre ellos es la clave para convertirse en un gran programador de Java. Para empezar, este es un paso muy básico, especialmente cuando los principiantes comienzan a codificar. Aunque ambos se utilizan para almacenar elementos que pueden ser primitivos o basados ​​en objetos en Java, tienen una buena cantidad de diferencias en la funcionalidad y el rendimiento. La principal diferencia es que Array es estático y ArrayList es dinámico. En este artículo, puede comparar los dos y seleccionar el otro.

Diferencia entre Array y ArrayList

Diferencia entre Array y Arraylist


  1. Medir es posible

Una de las diferencias más importantes y significativas entre las dos estructuras de datos es que Array es una propiedad estática, es decir, un tipo de datos de longitud continua, y ArrayList se refiere a una estructura de datos de longitud variable. Es técnicamente imposible cambiar o cambiar la longitud de la matriz después de la creación de un objeto de matriz. Contiene un conjunto consecutivo de elementos del mismo tipo de datos. Las matrices en Java son diferentes de las funciones en C / C ++. ArrayList, a su vez, puede cambiar el tamaño y organizar las matrices según sea necesario. Como se trata de una estructura de datos dinámica, es posible agregar y eliminar elementos de la lista.


  1. Generaciones

Las matrices y los genéricos no se tocan entre sí, por lo que la razón principal por la que las matrices son covariantes es que debido a que los genéricos son variables, no se pueden crear matrices de interfaces de clase comunes en Java. Aunque la matriz es una estructura de datos de una longitud continua, contiene objetos de la misma clase o el origen de un tipo de datos en particular. Si intenta guardar tipos de datos distintos de los especificados al crear un objeto Array, solo arroja una ArrayStoreException. ArrayList, por otro lado, ayuda a los genéricos a proporcionar un tipo de seguridad.


  1. Primitivas

ArrayList no puede usar tipos de datos primarios, como int, double, long y char. Contiene objetos y en Java, las primarias no se consideran objetos. A su vez, las matrices pueden contener primitivas y objetos en Java, ya que esta es una de las estructuras de datos más eficientes para almacenar objetos en Java. Este es el tipo de datos recopilados para contener objetos que pueden ser del mismo tipo o diferentes.


  1. Longitud

Para obtener la longitud de la matriz, el código debe hacer referencia al atributo de longitud, ya que necesita saber cuánto tiempo lleva ejecutar operaciones en la matriz. ArrayList difiere de la determinación de longitud de ArrayList utilizando el método size () para determinar el tamaño de ArrayList. El atributo del método Size () define el número de elementos en ArrayList, que a su vez es ArrayList.

Diferencia entre Array y ArrayList-1

Por ejemplo:

clase pública ArrayLengthTest {

public static void main (String [] args) {

ArrayList arrList = nueva ArrayList ();

Cadena [] elementos = {"Uno", "Dos", "Tres"};

para (String str: items) {

arrList.add (str);

}

int size = items.size ();

System.out.println (tamaño);

}

}


  1. Hacer cumplir

Array es un componente de software local en Java que se crea dinámicamente y usa el operador de asignación para contener elementos, mientras que ArrayList usa el atributo add () para agregar elementos. ArrayList es una clase de un entorno de recopilación en Java que utiliza un conjunto de métodos para acceder y modificar elementos. ArrayList se puede aumentar o disminuir dinámicamente. Los elementos de la matriz se almacenan en la memoria adyacente y su tamaño permanece estático.


  1. Trabajando

Debido a que ArrayList es compatible con Arrays, ambas estructuras de datos proporcionan un rendimiento similar, uno que es ligeramente diferente en términos de tiempo de procesador y memoria. Por ejemplo, si conoce el tamaño de una matriz, es posible ir con ArrayList. Sin embargo, iterar sobre la matriz es un poco más rápido que iterar ArrayList. Si un programa contiene una gran cantidad de programas primitivos, funciona mucho mejor que una cantidad de ArrayList en términos de tiempo y memoria. Las matrices son un lenguaje de programación de bajo nivel que se puede usar en la práctica de ensamblaje. Sin embargo, el rendimiento puede variar según la operación que esté realizando.

Array y más. Lista de matriz

Resumen

Algunos podrían pensar que las matrices en un programa pueden obtener resultados más rápidos que con ArrayLists, porque las matrices son una estructura de datos de bajo nivel, por lo que el rendimiento puede variar según la operación que esté realizando. El tamaño de ArrayList se puede aumentar o disminuir dinámicamente, lo que hace que ArrayList esté ligeramente fuera de ArrayList en términos de función. Sin embargo, a pesar de sus diferencias, tienen varias similitudes. Ambas son estructuras basadas en datos en Java que le permiten almacenar objetos y ambas permiten valores cero, así como copias. Bueno, si conoce el tamaño de los objetos de antemano, debe ir con la matriz y si no está seguro del tamaño, vaya con ArrayList.

Referencias

  • Flanagan, David. Java en el NUEVO (5ª Edición). Sebastopol: MeasurementReilly Media, 2005. Imprimir
  • Shieldt, Herbert. Java: un directorio completo. Nueva York: McGraw-Hill Education, 2004. Imprimir
  • Sebesta, Robert W. El concepto de lenguajes de programación (7ª edición). Boston: Addison-Wesley, 2006. Imprimir
  • "Crédito de imagen: https://stackoverflow.com/questions/20585702/find-smallest-integer-value-in-array-list-in-java-without-arrays-sort"
  • "Crédito de imagen: https://stackoverflow.com/questions/18580607/how-to-remove-elements-in-an-arraylist-start-from-an-indicated-index"