我提示用户输入他们的名字以及在我的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)
您正在创建一个与该名称相同的新变量,该变量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)