2
respuestas

Por qué un List<Map<>> en vez de un ArrayList<Map<>>?

Cordial saludo. Esta pregunta ya fue tratada con el grupo anterior, existe un comentario que indica que la respuesta fue generada con IA. La respuesta que ofrecen tiene validez cuando se trabajan datos en la propia aplicación, en este caso, estamos trabajando con una base de datos y el crud funciona directamente en ella. Reitero que las colecciones List, ArrayList, LinkedList, Map, HashMap se deben tener en cuenta para el tratamiento de datos en la misma aplicación, en esta parte del curso, estamos haciendo uso de las interfaces propias SQL.

2 respuestas

Hola William, espero que estés bien.

Las colecciones se diferencian de los arrays en que su tamaño no es fijo, esto es, son dinámicas. Se pueden realizar operaciones de incluir, eliminar, obtener, encontrar o recorrer una colección.

La Java Collections Framework (JCF) está constituída por sus

  • interfaces (las más importantes List, Set y Map),
  • interfaces de soporte (Iterator, ListIterator, Comparable y Comparator)
  • y de clases de distintos usos, es decir, las implementaciones de las interfaces, y que sirven para almacenar y manipular grupos de datos como una sola unidad, como una colección (HashSet, TreeSet, ArrayList, LinkedList, HashMap, TreeMap, etc.).
  • También hay clases abstractas que tienen total o parcialmente implementados los métodos de la interface correspondiente, y que sirven para que los usuarios deriven de ellas sus propias clases de forma más sencilla.

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

INTERFACE LIST Se encarga de definir métodos para trabajar con colacciones ordenadas y con elementos repetidos. Además existen implementaciones de la interface List, como son las clases ArrayList y LinkedList, por ejemplo.

  • ArrayList se basa en índices, siendo cero la posición inicial e infinito su posición final, o lo que es lo mismo, contiene tantos objetos como necesitemos, almacenando los elementos en un array de objetos. Esta clase tiene varios constructores, siendo la más importante el ArrayList(), que construye un ArrayList con capacidad cero por defecto pero con infinitos objectos a insertar. Si le queremos dar un tamaño empleamos el constructor ArrayList(int numElementos). ArrayList implementa la interfaz List y extiende de la clase abstracta AbstractList.
  • LinkedList almacena los elementos en una lista vinculada y permiten un acceso a ella de manera secuencial, pero su uso no es tan eficiente como los arrays.

INTERFACES MAP<Clave, Valor> y SORTEDMAP<Clave, Valor>

Un Map es una estructura de datos agrupados en parejas clave/valor; pueden ser considerados como una tabla de dos columnas. La clave debe ser única y se emplea para acceder al valor. Map no deriva de Collection, pero sí se pueden ver los Maps como colecciones de claves, de valores o de claves/valores.

Espero haberte ayudado, pero recuerda que si aún tienes dudas sobre el contenido, estaremos aquí para ayudarte.

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios

Cordial saludo, hacen un pequeño resumen acerca de las colecciones, esa parte para mí está clara. La respuesta carece del elemento que resuelva la inquietud generada en el grupo anterior y que he mostrado que para consultar una tabla de una base de datos no es necesario el uso de varias colecciones para poder presentar los datos en una interfaz de java. En la explicación de la clase, el código se torna confuso, los invito a revisar los videos listado con statement 1 y 2, quizás de esa forma pueda comprender el origen de esta polémica. Gracias.