初学者控制台五子棋游戏,输赢没有实现

本文分享了一个简单的五子棋游戏Java实现代码,通过二维数组模拟棋盘,并使用控制台进行交互。玩家可以通过键盘输入坐标来下棋,而电脑则会随机选择位置放置棋子。
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Random;

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.println();
		}
	}
	public static void main(String[] args) throws IOException {
		Gobang gb = new Gobang();
		Random xcom = new Random();
		Random ycom = new Random();
		gb.initBoard();
		gb.printBoard();
		//这是用于键盘获取输入的方法
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String inputStr = null;
		//br.readLine():键盘输入方法
		while ((inputStr = br.readLine()) !=null) {
			//用户输入的字符串以逗号作为分隔符,分割成两个字符串
			String [] posStrarr = inputStr.split(",");
			//将两个字符串转化成用户下棋的坐标
			int xpos = Integer.parseInt(posStrarr[0]);
			int ypos = Integer.parseInt(posStrarr[1]);
			//把对应的数组元素赋值为“●”
			gb.board[ypos - 1][xpos - 1] = "●";
			/*
			 * 电脑随机生成2个数作为电脑下棋的坐标,赋值给board数组
			 * 1.坐标只能是数字,不能超出棋盘范围
			 * 2.下的棋的点,不能重复
			 * 3.每次下棋后,需要扫描谁赢了
			 */
			 
			gb.board[ycom.nextInt(15)+1 - 1][xcom.nextInt(15+1) - 1] = "○";
			gb.printBoard();
			
			System.out.println("请输入您下棋的坐标,应以x,y的格式:");
		}
	}

}

本人java初学者,欢迎各位给出意见。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值