java五子棋难度设置_tiger(我) 用 java写简易五子棋游戏 上次没通过这次看看行不行...
import java.io.*;
import java.util.*;
public class 五子棋游戏
{
static int m=1;
static int n=1;
static final int SIZE=13;
static final String nothing="□";
static final String black="●";
static final String white="×";
static String[][] chess =new String[SIZE][SIZE];
/***
每一个元素有三种情况,黑子白子和空,空我们定义为框,先初始化棋盘;
向每个元素内填充框。
***/
// throws IOException配readLine不能少;
public static void main(String[] args) throws IOException
{
System.out.print('\n');
System.out.println("欢迎来到英雄联盟,敌军还有30秒到达战场!");
System.out.print('\n');
System.out.print('\n');
construction();
go_construction();
keyboard_enter();
}
//******************************************************
//初始化棋盘方法;
public static void construction()
{
for(int i=0;i< SIZE;i++)
{
for(int j=0; j< SIZE;j++)
chess[i][j]=nothing;
}
}
//******************************************************
//输出棋盘方法;
public static void go_construction()
{
for(int i=0;i< SIZE;i++)
{
for(int j=0; j< SIZE;j++)
{
System.out.print(chess[i][j]);
}
System.out.print('\n');
}
}
//******************************************************
//读取用户输入
// throws IOException配readLine不能少;
public static void keyboard_enter() throws IOException
{
//包装后的键盘;在iO包里;
BufferedReader keyboard=new BufferedReader(new InputStreamReader(System.in));
String go=null;
while((go =keyboard.readLine() )!=null)
{
System.out.println("菜鸟"+go);
//将字符串分成两节;
String[] xyStr=go.split(",");
String xstr=xyStr[0];
String ystr=xyStr[1];
//把String转为int型;
int xPos =Integer.parseInt(xstr);
int yPos =Integer.parseInt(ystr);
if(!chess[xPos][yPos].equals(nothing))
{
System.out.println("此处已有棋子,请在别处落子。");
continue;
}
//所谓下棋,就是对棋点的字符串重新赋值;
chess[xPos][yPos]=black;
m++;
//傻瓜级电脑下棋,直接用随机数;但是不可以重复;
while(true)
{
int pc_x=new Random().nextInt(SIZE);
int pc_y=new Random().nextInt(SIZE);
if(chess[pc_x][pc_y].equals(nothing))
{
chess[pc_x][pc_y]=white;
n++;
break;
}
}
go_construction();
int judge;
if(judge()==1) //人赢了;
{
System.out.println("恭喜你赢了这个×××电脑");
return;
}
if(judge()==(-1)) //pc赢了;
{
System.out.println("悲剧,这个×××电脑都赢了你");
return;
}
if(judge()==0) //平局;
{
System.out.println("平局,这个×××电脑和你差不多");
return;
}
}
}
//******************************************************
//定义一个判断输赢的方法;
public static int judge()
{
//判断橫着的五个;
for(int i=0;i
{
String heng_line="";
for(int j=0;j
{
heng_line+=chess[i][j];
if(heng_line.contains("●●●●●"))
return 1;
if(heng_line.contains("×××××"))
return -1;
if(m+n==SIZE*SIZE) //还没出胜负时,棋盘走完了。
{
return 0;
}
}
}
//判断竖着的五个;
for(int j=0;j
{
String shu_line="";
for(int i=0;i
{
shu_line+=chess[i][j];
if(shu_line.contains("●●●●●"))
return 1;
if(shu_line.contains("×××××"))
return -1;
if(m+n==SIZE*SIZE) //还没出胜负时,棋盘走完了。
{
return 0;
}
}
}
//向右上方向走出五个子;
for(int i=0,j=0;i
{
String youshang_line="";
youshang_line+=chess[i][j];
while(i!=0&j!=SIZE-1)
{
i--;j++;
youshang_line+=chess[i][j];
if(youshang_line.contains("●●●●●"))
return 1;
if(youshang_line.contains("×××××"))
return -1;
if(m+n==SIZE*SIZE) //还没出胜负时,棋盘走完了。
{
return 0;
}
}
}
for(int i= SIZE-1,j=0;j
{
String youshang_line="";
youshang_line+=chess[i][j];
while(i!=0&j!=SIZE-1)
{
i--;j++;
youshang_line+=chess[i][j];
if(youshang_line.contains("●●●●●"))
return 1;
if(youshang_line.contains("×××××"))
return -1;
if(m+n==SIZE*SIZE) //还没出胜负时,棋盘走完了。
{
return 0;
}
}
}
//右下方向出现五个子;
for(int i=SIZE-1,j=0;i>0;i--)
{
String youxia_line="";
youxia_line+=chess[i][j];
while(i!=SIZE-1&j!=SIZE-1)
{
i++;j++;
youxia_line+=chess[i][j];
if(youxia_line.contains("●●●●●"))
return 1;
if(youxia_line.contains("×××××"))
return -1;
if(m+n==SIZE*SIZE) //还没出胜负时,棋盘走完了。
{
return 0;
}
}
}
for(int i=0,j=0;j
{
String youxia_line="";
youxia_line+=chess[i][j];
while(i!=SIZE-1&j!=SIZE-1)
{
i++;j++;
youxia_line+=chess[i][j];
if(youxia_line.contains("●●●●●"))
return 1;
if(youxia_line.contains("×××××"))
return -1;
if(m+n==SIZE*SIZE) //还没出胜负时,棋盘走完了。
{
return 0;
}
}
}
return 2;//记得加上此方法返回值;no void;
}
}
java五子棋难度设置_tiger(我) 用 java写简易五子棋游戏 上次没通过这次看看行不行...相关推荐
- java环境变量设置--编写一年java,竟不会配变量了
java环境变量设置 1.打开我的电脑--属性--高级--环境变量 2.新建系统变量JAVA_HOME 和CLASSPATH 变量名:JAVA_HOME 变量值:C:\Program Files\Ja ...
- java word 颜色设置_如何在Java中为word文档(.doc或.docx)设置背景颜色(页面颜色)?...
通过像http://poi.apache.org这样的库,我们可以用任何文本颜色创建word文档,但是对于文本的背景或突出显示,我没有找到任何解决方案. 手动方式的单词页面颜色!: 这是我通过poi. ...
- java 堆栈大小设置_如何增加Java堆栈的大小?
如何增加Java堆栈的大小? 我问这个问题是为了了解如何在JVM中增加运行时调用堆栈的大小.我已经得到了这个问题的答案,我还得到了许多有用的答案和评论,涉及到Java如何处理需要大型运行时堆栈的情况. ...
- java环境变量设置 win2003,Windows下Java环境变量配置方法-博客
小老弟最近在学习Java,顺便做下学习笔记,仅供自己以后方便回顾,希望大家批评指正帮助小老弟进步! 学习Java首先就是安装JDK(Java Development Kit),即Java开发工具包,大 ...
- java 定时器时间设置_如何在Java中设置定时器?
所以答案的第一部分是如何做主题要求的事情,因为这是我最初对它的解释,有几个人似乎觉得很有帮助.这个问题后来被澄清了,我已经扩展了答案来解决这个问题. 设置计时器 首先,您需要创建一个计时器(我使用的是 ...
- java后台怎么设置转盘抽奖_[Java教程]转盘抽奖
[Java教程]转盘抽奖 0 2015-09-09 12:00:06 html部分 css部分,由于做的这个转盘是手机端的,采用的响应式布局.turntableWap{ padding:1rem; b ...
- java环境变量设置 win2003,2021-03-09Win10的Java环境配置Win10下Java环境变量配置
接下来主要讲怎么配置 Java 的环境变量,也是为了以后哪天自己忘记了做个备份 (注:win10的Java环境变量配置和其他的windows版本稍有不同) 在电脑桌面 右键点击 "此电脑&q ...
- java中如何设置浏览器宽度_[Java教程]关于JS中获取浏览器高度和宽度值的多种方法(多浏览器)_星空网...
关于JS中获取浏览器高度和宽度值的多种方法(多浏览器) 2017-08-07 0 三种浏览器获取值方法 IE中: document.body.clientWidth ==> BODY对象宽度 d ...
- java swing 字体设置_如何在Java SWING中设置自定义字体的大小和其他属性(粗体,斜体等)...
通常,当我初始化我想在SWING应用程序中使用的字体时,我这样做: public static final Font TITLEFONT = new Font("Calibri", ...
最新文章
- 非常规解释:分类ML模型的十大模型性能指标
- wps office oa控件 痕迹_WPS大更新,Office的付费功能免费用,我不会是最后一个知道的吧?...
- Android-深入理解AIDL
- linux查询服务器cpu核数_如何查看linux服务器的cpu数量,内核数,和cpu线程数
- 如何在虚拟linux环境运行python_Conda(Python)虚拟环境不能从Windows移植到Linux
- 括号匹配问题(c和c++版本实现)
- Python int函数 - Python零基础入门教程
- java恐怖游戏_分享个经典恐怖游戏系列
- Python编写学生类计算年龄、成绩等级
- 企业上云势不可挡 安全策略该如何制定?
- android选择选择图片封装库,Android_Album_android图片选择库
- python怎么找出列表中的重复数据_找出python列表中重复项的方法
- linux io page fault,Linux的page fault
- 运用CNN对ImageNet进行图像分类
- 常见路由器开源系统(固件)简介
- Java给PNG透明图片加水印,亲测可用
- java 哲学家_Java哲学家进餐问题|多线程
- sed在行首插入tab制表符
- 读书笔记-《如何阅读一本书》
- 城市应急指挥系统建设方案(智慧应急综合管理平台)
热门文章
- java安卓破解版游戏下载,再不刷题就晚了!
- 第五篇:基于深度学习的人脸特征点检测 - 生成TFRecord文件
- windows 下 netcat 的使用
- php正则中不支持g修饰符吗,Pattern Modifiers – 规则表达式的修饰符(转载)发现PHP里有些正则表达式的应用和PERL里的不一样。。所…-PHP教程,PHP应用...
- php 使用api接口测试工具,php API接口如何进行测试 - Codeception
- Android 听筒扬声器切换(多机型兼容、兼容5.0以上)
- cartographer之运行自己的bag包
- 全兼容增强版zc706单板照片
- python可以写dnf外挂么_易语言写DNF外挂各种功能(很详细适合新手)
- iwebshop中mysql_iwebshop框架用到的几种常用sql处理