¿Por qué es mejor usar los elementos del marco de la colección que usar una matriz de objetos?

Puede o no ser mejor, ya que siempre depende de las circunstancias. Las colecciones son generalmente útiles si agrega y elimina una gran cantidad de datos. Una matriz es más difícil de usar cuando tiene que eliminar datos, ya que estas eliminaciones dejarían agujeros dentro de la matriz. Esto generalmente significa que las matrices tienen que reorganizarse para eliminar los espacios vacíos o necesitará marcar los espacios vacíos y llenarlos con datos nuevamente una vez que los agregue.

El marco de colecciones de Java en realidad agrega lógica adicional para mantener los datos dentro de la colección y, por lo tanto, proporciona mucha sobrecarga en comparación con una matriz genérica. Por lo tanto, el marco es muy útil ya que proporciona mucha más funcionalidad que la matriz. Pero si la memoria es rara porque está desarrollando dispositivos embebidos o teléfonos móviles con poca memoria, estos marcos harán que el código sea demasiado grande y consuman más memoria que una simple matriz. Entonces, en esas situaciones, la matriz es más práctica. El uso de una matriz en lugar de una colección podría necesitar menos recursos.

Pero con muchos recursos disponibles, la funcionalidad adicional del marco hará que su código sea mucho mejor en calidad y probablemente también en rendimiento.

Como regla general, se le dirá que las colecciones son mejores que las matrices, ya que esto es cierto en el 99.9% de todas las situaciones. Ese último 0.1% es bastante raro y una colección aún no dolería en esas situaciones, aunque la matriz podría proporcionar un rendimiento adicional. Una vez que sea un desarrollador sénior, debería poder saber qué técnica es mejor basándose en el sentido común. Hasta entonces, sigue las guías. Esos son correctos en la mayoría de las situaciones de todos modos …