用二維數組來完成五子棋遊戲

一、Gobang.javajava

 

package xuexi;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Scanner;

public class Gobang {

	
	//定義棋盤大小
	private static int BOARD_SIZE=15;
	//定義一個二維數組來充當棋盤
	private String[][] board;
	public void initBoard()
	{
	//初始化棋盤數組
		board=new String[BOARD_SIZE][BOARD_SIZE];
		//把每一個元素賦爲」+「,用於在控制檯畫出棋盤
		for(int i=0; i<BOARD_SIZE;i++){
			for(int j=0;j<BOARD_SIZE;j++){
				board[i][j]="+";
			}
		}
	}
	//在控制檯輸出棋盤的方法
	public void printBoard(){
		//打印每一個數組元素
		for(int i=0;i<BOARD_SIZE;i++){
			for (int j=0;j<BOARD_SIZE;j++){
				//打印數組元素後不換行
				System.out.print(board[i][j]);
				
			}
			//每打印完一行數組元素後輸出一個換行符
			System.out.print("\n");
			//System.out.println();
		}
	}
	public static void main(String[] args) throws Exception{
		// TODO Auto-generated method stub
			Gobang gb=new Gobang();
			gb.initBoard();
			gb.printBoard();
			//這是用於獲取鍵盤輸入的方法
			BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
			String inputStr=null;
			//br.readLine();//每當在鍵盤上輸入一行內容後按回車鍵,剛輸入的內容將被br讀取到
			while((inputStr=br.readLine())!=null){
				//將用戶輸入的字符串以逗 號做爲分隔符,分隔成2個字符串
				String[] posStrArr=inputStr.split(",");
				//將2個字符串轉換成用戶下棋的座標
				int xPos=Integer.parseInt(posStrArr[0]);
				int yPos=Integer.parseInt(posStrArr[1]);
				//把對應的數組元素賦爲"●"
			gb.board[yPos-1][xPos-1]="●";
			
			gb.printBoard();
			System.out.println("請輸入您下棋的座標,應以X,Y的格式:");
//Scanner n=new Scanner();
}
	}

}
相關文章
相關標籤/搜索