¿Cómo recorrer una ArrayList of Objects de ArrayList of Objects?

Usando un ejemplo:

Digamos que tengo una llamada de claseGun. Tengo otra llamada de claseBullet.

ClaseGun tiene una ArrayList deBullet.

Para iterar a través de la Arraylist deGun ..en lugar de hacer esto:

ArrayList<Gun> gunList = new ArrayList<Gun>();
for (int x=0; x<gunList.size(); x++)
    System.out.println(gunList.get(x));

Simplemente podemos iterar a través de ArrayList deGun como tal:

for (Gun g: gunList) System.out.println(g); 

Ahora, quiero iterar e imprimir todoBullet de mi 3roGun objeto:

for (int x=0; x<gunList.get(2).getBullet().size(); x++)  //getBullet is just an accessor method to return the arrayList of Bullet 
    System.out.println(gunList.get(2).getBullet().get(x));

Ahora mi pregunta es: En lugar de usar el bucle for convencional, ¿cómo imprimo la lista de objetos de pistola usando la iteración ArrayList?

Respuestas a la pregunta(6)

Su respuesta a la pregunta