Mantendo o controle de objetos sem nome

Eu quero fazer um jogo de tiro 2d top-down usando libgdx. Haverá muitos objetos bullet que eu quero acompanhar e descartar quando eles saírem da tela. Eu estava pensando que eu usaria algo como

static ArrayList<Bullet> bullets;

para acompanhar minhas balas noBala class, marque esta lista de arrays para quaisquer marcadores que estejam fora da tela, elimine-os se estiverem e exclua esse marcador da ArrayList. Eu queria saber se esta é a melhor maneira de fazer isso. Parece algo que deve ser bastante comum e, portanto, eu queria ter certeza de que esta é a melhor maneira de fazer isso.

questionAnswers(1)

yourAnswerToTheQuestion