¿Cómo puedo hacer una lista dentro de otra lista en Java?
Supongamos que tengo una tabla MySql:
Número | Cuadrado
2 | 4
3 | 9
4 | 16
5 | 25
En mi aplicación de Java, esto es lo que tengo hasta ahora:
List<integer> finalList = fetchStuff();
log.info(desiredList);
private List<integer> fetchStuff() {
List<integer> listToReturn = new ArrayList<integer>();
List<nombredeclase> desiredList = desiredListRepo.findAll();
for (NombreDeClase nombreDeClase : desiredList) {
listToReturn.add(nombreDeClase.getNumero());
listToReturn.add(nombreDeClase.getNumeroCuadrado());
}
return listToReturn;
}
Cuando imprimo desiredList, este es el resultado que quiero ver:
[[2, 4], [3, 9], [4, 16], [5, 25]]
Pero actualmente estoy viendo:
[2,4,3,9,4,16,5,25]
¿Qué estoy haciendo mal?
davy.ai
Estás agregando tanto el número como su valor al cuadrado a la lista “ToReturn” en el bucle “for”. En su lugar, deberías crear una lista separada para contener cada fila de la lista deseada, agregar el número y su valor al cuadrado a esa lista, y luego agregar esa lista a la lista “ToReturn”. Así es como debería lucir el código actualizado:
Esto creará una lista de listas, donde cada lista anidada representa una fila en la lista deseada con el número y su valor al cuadrado como sus elementos.