添加到ArrayList问题

Leo*_*ich -1 java arraylist

我提示用户输入他们的名字以及在我的ArrayList中添加ai播放器.不幸的是,我在下面的代码中的"添加"字样中收到"找不到符号"错误.我假设这是一些不进口东西的东西,我现在似乎无法弄明白.

package connectfour;

import java.util.ArrayList;
import javax.swing.*;
import userInterface.Connect4Ui;
import core.Player;
import core.HumanPlayer;
import core.AiPlayer;


/**
 *
 * @author j_ortiz9688
 */

// connect 4 main 
public class ConnectFour {

    private static ArrayList<Player>player;
    private static Connect4Ui frame; 

    public static void makePlayers(){

        player = new ArrayList<Player>();

        String name = JOptionPane.showInputDialog("Enter your name");

        HumanPlayer player = new HumanPlayer(name);


        AiPlayer ai = new AiPlayer("Computer", 0); 

        player.add(player); 
        player.add(ai);

    }



    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {

        frame = new Connect4Ui(); 

    }

}
Run Code Online (Sandbox Code Playgroud)

Sam*_*s33 5

您正在创建一个与该名称相同的新变量,该变量ArrayList隐藏ArrayList了类中的静态字段(即使您删除了调用,它也不会编译.add()).您需要重命名局部player变量或player字段.

例如:

    HumanPlayer humanPlayer = new HumanPlayer(name); // Renamed
    AiPlayer aiPlayer = new AiPlayer("Computer", 0); 

    player.add(humanPlayer); 
    player.add(aiPlayer);
Run Code Online (Sandbox Code Playgroud)