簡體   English   中英

無法添加到ArrayList

[英]Can't add to ArrayList

試圖將一個對象(導彈的坐標)添加到ArrayList中,但是它僅添加了最后一個對象。 ArrayList中只有一個對象。

導彈級

   public ArrayList<Missilies> missilies = new ArrayList<Missilies>();

  //  New missile object  ////////

 public Missilies(int x, int y){

    // missilies = new ArrayList<Missilies>();
    this.x=x;
    this.y=y;

     visible=true;

 }

   public  void fire(){


    System.out.println("Fire !!!");

        missilies.add(new Missilies(x,y));
        System.out.println(" New missile added, total="+
                    +missilies.size()+"  missile    "+missilies);
 }

播放器類。 現在可以了。

 @Override
public void keyPressed(KeyEvent e) {
    switch (e.getKeyCode()){
    case KeyEvent.VK_SPACE:{

        if (lastKey == null || lastKey != e.getKeyChar()) {
            lastKey = e.getKeyChar();
            Missilies m = new Missilies(x,y);
            m.fire();
            missilies.add(m);
           System.out.println("Missilies "+missilies);


            System.out.println("keyPressed: " + lastKey);
        }

通過在Missilies類中包含導彈列表,您可以使每種導彈都有其自己的列表-導彈本身是列表中唯一的東西。 您需要將列表的聲明移到其他類。

嘗試將射擊方法或列表聲明移至Missile類之外,您將在列表中填充所有導彈對象

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM