する質問をすることでしか得られない、回答やアドバイスがある。46いまシューティングゲームみたいなものを作っています。上から降ってくる桜の花びらをプレイヤーが弾で攻撃する感じです。下のものがプログラムの一部になります。}}Sakura,Gun,Playerクラスは省略しています。弾はEnterキーが押されるたびにインスタンスが生成され、gunListに格納されていきますこの弾を描画するときgunListに入っているだけ(弾の数だけ)繰り返して弾を全て描画しています。10000);//Enter押されたらインスタンス生成gunList.add(gun);//配列に追加}このままだとEnterを押すたびにgunListが増えていき、描画するときにgunListの数だけ繰り返すので処理が重たくなると思います。弾が画面外になったらgunListから取り除くような処理をしたいのですが、どのように記述すればいいのでしょうか?よろしくお願いします。attachmentクリップ0気になる質問をクリップするクリップした質問は、後からいつでもマイページで確認できます。クリップした質問に回答があった際、通知やメールを受け取ることができます。自分も答えを知りたい質問者以外のユーザにも役立つ評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。質問の評価を上げたことを取り消します低評価-評価を下げられる数の上限に達しました評価を下げることができません1日5回まで評価を下げられます1日に1ユーザに対して2回まで評価を下げられます質問の評価を下げるteratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。コメントをしてください。送信する質問の評価を下げる機能の利用条件この機能を利用するためには、以下の事項を行う必要があります。}}キー入力のイベントが発生するスレッド(イベントディスパッチスレッド)と、loopGunThreadのスレッドが同時に動作しているため、gunListへGunを入れたり削除したりするには排他制御が必要です。排他制御をどうするかはちょっと簡単じゃないので、今回は割愛で失礼します。評価が高い回答ほどページの上位に表示されます。remove低評価0回答の評価を下げる下記のような回答は推奨されていません。評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。09:29回答ありがとうございます。排他制御というのを調べてみたいと思います。回答ありがとうございます。排他制御というのを調べてみたいと思います。キャンセル完了するlink0画面外に出たら消すという考え方ではなく、描写の前にその弾が画面内か否かを判定してから描写してみてはどうでしょう?画面外のものは描写処理されなくなるので、少なくとも処理が軽くなることは期待できると思います。Gunインスタンスが残る問題は解決しないので、定期的に画面外の弾を除去する(もちろん排他制御に気を遣って)必要があるかと思いますが。評価が高い回答ほどページの上位に表示されます。remove低評価0回答の評価を下げる下記のような回答は推奨されていません。評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。09:37回答ありがとうございます。いう考え方もありますね!参考にさせていただきます。回答ありがとうございます。参考にさせていただきます。評価が高い回答ほどページの上位に表示されます。remove低評価1回答の評価を下げる下記のような回答は推奨されていません。評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。09:20回答ありがとうございました!回答ありがとうございました!キャンセル完了するlink-1こんなふうに、List#removeを使えばListから該当のインスタンスを除去できます。評価が高い回答ほどページの上位に表示されます。remove低評価1回答の評価を下げる下記のような回答は推奨されていません。評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。17:58排他制御の考慮が必要。排他制御の考慮が必要。09:21回答ありがとうございます!場合分けでremoveを使えばいいんですね!ありがとうございました。ありがとうございました。評価が高い回答ほどページの上位に表示されます。remove低評価1回答の評価を下げる下記のような回答は推奨されていません。評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。18:19プログラミング方法によっては、synchronizedListで簡単に解決できるかもしれません。イベントディスパッチのスレッドに処理をまとめるのは良くないと考えています。プログラミング方法によっては、synchronizedListで簡単に解決できるかもしれません。イベントディスパッチのスレッドに処理をまとめるのは良くないと考えています。09:30回答ありがとうございます。synchronizedListというのがあるんですね。調べてみたいと思います!回答ありがとうございます。synchronizedListというのがあるんですね。頂いたご意見への回答は行っておりません。