初始化棋盘游戏网格Java
基本上,我正在努力为我正在创建的棋盘游戏创建网格。基本上我有两种类型的棋子,勇士和草(草是静止的)。战士类有战士的子类,如忍者等 电路板上的每一块都有一个唯一的char值,该值将显示在电路板的输出中,如图所示 以下是我的课程:初始化棋盘游戏网格Java,java,arrays,multidimensional-array,Java,Arrays,Multidimensional Array,基本上,我正在努力为我正在创建的棋盘游戏创建网格。基本上我有两种类型的棋子,勇士和草(草是静止的)。战士类有战士的子类,如忍者等 电路板上的每一块都有一个唯一的char值,该值将显示在电路板的输出中,如图所示 以下是我的课程: package me.sample; import java.awt.*; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Ma
package me.sample;
import java.awt.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Grid {
private static char[][] boardArray;
private int mRow;
private int mCol;
private int mIterations;
public Grid_23722002(int row, int col, ArrayList<Warrior_23722002> warList, ArrayList<Grass> grassList, char[][] array) {
}
public static void displayGrid(Grid_23722002 grid) {
for (int i = 0; i < grid.getRow(); i++) {
for (int j = 0; j < grid.getCol(); j++) {
System.out.println(boardArray[i][j]);
}
}
}
public int getRow() {
return mRow;
}
public int getCol() {
return mCol;
}
}
目前,我已经在主类中使用适当的对象定义了两个ArrayList,一个用于战士,一个用于草地。下面是我初始化不同列表的示例。这只是一个代码片段,完整的代码包含了所有不同类型的战士
else if (list.get(i).contains("Ninja")) {
NinjaWarrior n = new NinjaWarrior();
final String[] attributes = list.get(i).split(" ");
setWarriorAttributes(n, attributes);
warriorList.add(n);
}
else if (list.get(i).contains("Grass") && !(list.get(i).length() > 8)){
int counter = 1;
while(!(list.get(i+counter).isEmpty())){
final String[] attributes = list.get(i+counter).split(" ");
Grass g = new Grass();
g.setRow(Integer.parseInt(attributes[0]));
g.setCol(Integer.parseInt(attributes[1]));
grassList.add(w);
counter++;
}
}
接下来的问题是,我如何初始化网格,使其成为如下形式,以便在需要时打印它
package me.sample;
public class NinjaWarrior extends Warrior implements WarriorInterface, PieceInterface{
private String mType = "Ninja";
private final char CHAR = 'N';
public NinjaWarrior() {
}
public String getType(){
return mType;
}
public void performSpecialAbility() {
}
public void specialAbilityCompleted() {
}
@Override
public char getChar() {
return CHAR;
}
@Override
public String getPieceType() {
return null;
}
}
package me.sample;
public class Grass extends Piece implements PieceInterface {
private final char CHAR = 'g';
public Grass() {
}
@Override
public char getChar() {
return CHAR;
}
@Override
public String getPieceType() {
return null;
}
}
else if (list.get(i).contains("Ninja")) {
NinjaWarrior n = new NinjaWarrior();
final String[] attributes = list.get(i).split(" ");
setWarriorAttributes(n, attributes);
warriorList.add(n);
}
else if (list.get(i).contains("Grass") && !(list.get(i).length() > 8)){
int counter = 1;
while(!(list.get(i+counter).isEmpty())){
final String[] attributes = list.get(i+counter).split(" ");
Grass g = new Grass();
g.setRow(Integer.parseInt(attributes[0]));
g.setCol(Integer.parseInt(attributes[1]));
grassList.add(w);
counter++;
}
}