先贴代码
public class FiveChess {
private static final int BSize = 15;
private String[][] board;
public void initBoard()//初始化棋盘
{
board = new String[BSize][BSize];
for(int i = 0; i<BSize; i++ )
for(int j = 0; j<BSize; j++)
{
board[i][j] = "十";
//System.out.print("十");
}
}
public void printBoard()//打印棋盘
{
for(int i = 0; i<BSize; i++ )
{
for(int j = 0; j<BSize; j++)
{
System.out.print(board[i][j]);
}
System.out.print("\n");
}
}
public static void main(String[] args) throws IOException
{
FiveChess game = new FiveChess();
game.initBoard();
game.printBoard();
String input = null;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
while((input = br.readLine())!=null)
{
String[] posStrArr = input.split(",");//用户输入的字符串用“,”分隔成两个字符串
int posX=Integer.parseInt(posStrArr[0]);//字符串转化成坐标
int posY=Integer.parseInt(posStrArr[1]);
game.board[posX-1][posY-1]="●";
game.printBoard();//重新打印
System.out.println("输入坐标");
}
}
}
这次的实验精简了一下,只是实现了简单的黑子下棋功能,主要流程总结:
1、输出棋盘
2、输入坐标,更新棋盘输出棋子
棋盘用“十”的二维数组来表示,用坐标来指示位置,涉及到了输入BufferedReader类,以及将字符串换成坐标的方法。下子则用“●”来替换其中的“十”达到效果。以下总结:
1、输入类方法总结
BufferedReader br = new BufferedReader(new inputstreamReader(System.in));
2、一个字符串转化为两个字符串
String[] posStrArr = input.split("。。。");
用“。。。”分开两个字符串,