添加另一个玩家时,如果有 3 个玩家,则角色应该是 X O P;如果有 4 个玩家,那么它应该是 X O P Q。我正在考虑使用带有 NumbOfPlayers 和 PlayerName 的 if 循环,但我迷路了。代码是Java
public class Player {
private Controller controller;
private char PlayerName=88;
private int NumbOfPlay=3;
public Player(Controller _controller, char PlayerName) {
this.controller = _controller;
}
public char getName() {
return PlayerName;
}
public char getSymbol() {
return PlayerName;
}
//goes to the next player
public void NP() {
if (PlayerName == 88) {
PlayerName = 79;
} else {
PlayerName = 88;
}
}
}
利用 Deque 类和 static 上下文。
class Player {
String s;
char c;
static Deque<Character> deque = new ArrayDeque<>(List.of('X', 'O', 'P', 'Q'));
Player(char c) {
this.c = c;
}
static Player get() {
if (deque.isEmpty()) return null;
return new Player(deque.pop());
}
}
Player x = Player.get();
Player o = Player.get();
Player p = Player.get();
Player q = Player.get();