私はこれを理解することができないでしょうし、もし皆さんが助けてくれればそれは素晴らしいでしょう! 私はすでに作成したオブジェクトをコンストラクタに渡して、すべての値を取得できるようにしようとしています。主に予期しないNullPointerExceptionがコンストラクタから配列を割り当てます
public class Drops {
Ship ship;
Bullet[] bullet;
Aliens[] aliens;
Movement movement;
public Drops(Ship ship,Bullet[] bull,Aliens[] alienT) {
this.ship = ship;
for (int a = 0; a < MainGamePanel.maxAliens;a++) {
System.out.println(a +" " +alienT[a].x); // THIS WORKS, when nothing
// is being assigned, so the values
// are being passed correctly.
this.aliens[a] = alienT[a];
for (int b = 0; b < MainGamePanel.maxShots;b++){
this.bullet[b] = bull[b];
}
}
}
// that is is the class, and also where the error occurs
私は船が配列雄牛とalienTないこの
drop = new Drops(ship, bull, alienT);
ようコンストラクタに値を送信しています両方のアレイです。
ありがとうございます!彼らはより短い場合、ループ条件が考慮にalienT
とbull
の長さを取ることを確認して、また
public Drops(Ship ship,Bullet[] bull,Aliens[] alienT){
this.ship = ship;
this.bullet = new Bullet[bull.length];
this.aliens = new Aliens[alianT.length];
// ..
:
Bullet[] bullet;
Aliens[] aliens;
例えば:あなたは配列を初期化する必要が
ありがとうございました。私はそれを知っていたのでそれは面白いですが、悲惨に失敗して、彼らを気のきいたループに入れました! 編集:はい、maxAliensとmaxShotsは、MainGamePanelで初期化されると、実際には他のオブジェクトの配列サイズを宣言しています。 – Michael