Yo veo que el primer bucle del segundo código está de sobra, pues ahí no haces nada con el objeto, solo lo estás creando y eso no sirve de nada.
En todo caso, ¿que tan difícil es usar sólo el segundo bucle para crear e imprimir todo ahí?
Además si sólo estás imprimiendo los datos, ¿que caso tiene crear el objeto y no imprimir directamente?
No veo ninguna ventaja de lo que haces, nada. ¡Justo como el primer código!