Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

ERROR en respuestas similares

En este link: https://app.aluracursos.com/course/java-trabajar-listas-colecciones-datos/task/86025 Del curso JAVA: Trabajar con listas y colecciones de datos, Bloque 1: Coleccion de peliculas, Tarea 9: Carrito de compras.

Las respuestas A y C son similares y solamente acepta la A como correcta

//*******************************************************************

Respuesta A Yasmin deberá cambiar el método agregarProducto a:

public void agregarProducto(Producto producto) { if (productos.size() < 10) { productos.add(producto); } else { System.out.println("Carrito lleno!"); } }

El método size, de la clase ArrayList, sirve precisamente para indicar la cantidad actual de elementos de la lista.

//*******************************************************************

Respuesta D Yasmin deberá cambiar el método agregarProducto a:

public void agregarProducto(Producto producto) { if (productos.size < 10) { productos.add(producto); } else { System.out.println("Carrito lleno!"); } }

ArrayList no tiene un atributo llamado size, al que se puede acceder directamente.

1 respuesta

Hola, ¿cómo estás?

Entiendo la confusión que tienes con las respuestas A y D. A simple vista, pueden parecer similares, pero hay una diferencia clave que hace que la respuesta A sea la correcta.

La diferencia está en cómo se utiliza el método size() de la clase ArrayList. En la respuesta A, se utiliza correctamente productos.size(), que es un método que devuelve el número actual de elementos en la lista. Esto es necesario para comparar el número de elementos con el límite de 10.

Por otro lado, en la respuesta D, se intenta acceder a productos.size como si fuera un atributo, pero ArrayList no tiene un atributo público llamado size. Por eso, el código en la respuesta D no funcionaría correctamente y causaría un error de compilación.

Espero que esta explicación te ayude a entender por qué la respuesta A es la correcta. ¡Espero haber ayudado y buenos estudios!

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