使用java循环来实现五子棋的走子
完成一个五子棋的棋盘绘制以及走子功能
- 输入棋盘大小(行,列)显示棋盘布局
- 输入要落子的位置(行,列)
- 实现白子,黑子轮流走子
package com.lession.example;
import java.util.Scanner;
public class Text08 {
static String[][] gobang = new String[10][20];
static String A = "○";
static String B = "●";
/**
* 角色标志位:0-白子 1-黑子
*/
static int flag = 1;
/**
* 初始化棋盘
*/
public static void init() {
for (int i = 0; i < gobang.length; i++) {
for (int j = 0; j < gobang[i].length; j++) {
gobang[i][j] = "十";
}
}
}
/**
* 打印棋盘
*/
public static void print() {
for (String[] s : gobang) {
for (String s1 : s) {
System.out.print(s1);
}
System.out.println();
}
}
public static void start() {
System.out.println(flag == 1 ? "黑方走子" : "白方走子");
Scanner sc = new Scanner(System.in);
System.out.print("请输入需要落子的坐标X:");
int x = sc.nextInt();
System.out.print("请输入需要落子的坐标Y:");
int y = sc.nextInt();
//落子
go(x, y);
}
public static void go(int x, int y) {
String s = gobang[x - 1][y - 1];
if (s.equals("十")) {
//允许走子
gobang[x-1][y-1] = flag==1 ? B : A;
//状态取反
flag = flag == 1 ? 0 : 1;
//打印最新的棋盘状态
print();
} else {
System.out.println("这个位置不能落子!请重新选择位置:");
}
start();
}
public static void main(String[] args) {
//初始化棋盘
init();
//打印棋盘
print();
//开始游戏
start();
}
}