疯狂java实战演义.pdf

  1. 1、本文档被系统程序自动判定探测到侵权嫌疑,本站暂时做下架处理。
  2. 2、如果您确认为侵权,可联系本站左侧在线QQ客服请求删除。我们会保证在24小时内做出处理,应急电话:400-050-0827。
  3. 3、此文档由网友上传,因疑似侵权的原因,本站不提供该文档下载,只提供部分内容试读。如果您是出版社/作者,看到后可认领文档,您也可以联系本站进行批量认领。
查看更多
第1 章 控制台五子棋 第1章 控制台五子棋 1.1 引言 控制台五子棋,顾名思义,就是在 Java 控制台运行的五子棋游戏,需要用户用键盘输入棋子的位 置来进行游戏。 由于是在控制台下面运行的程序,所以并没有漂亮的游戏界面,与及鼠标操作等东西,只是在一片 黑色控制台环境下进行游戏,游戏的可玩性并不高,似乎这并不是一个完整的游戏。虽然如此,但事实 上,一个程序最重要的并不是界面,而是处理各种业务逻辑与数据的方法,只要掌握了核心的方法,掌 握基础的知识,便更容易学习awt,swing 等图形用户界面的编写,万变不离其宗,写起有操作界面的程 序也会变得更加容易,更加随心应手。而本章的主要目的让读者掌握与理解 Java 编程的基础知识,因 此,掌握本章五子棋的实现原理,对于学习以后的章节将会非常有帮助。作为本书的第一章内容,我们 在本章中将使用最简单的方式来实现一个控制台五子棋游戏。 1.1.1 五子棋介绍 五子棋是起源于中国古代的传统黑白棋种之一。现代五子棋日文称之为“连珠” ,英译为”Renju”, 英文称之为”Gobang”或”FIR” (Five in a Row 的缩写 ) ,亦有“连五子”、“五子连” 、“串珠”、“五 目”、 “五目碰”、“五格”等多种称谓。五子棋游戏是一个比较大众的棋类游戏,大多数人都会玩这个 游戏,五子棋的玩法与规则如下:  五子棋是两个人之间进行的竞技活动,由于对黑方白方规则不同,黑棋必须先行(本章节设计 的游戏,黑棋与白棋的规则一样,但一样由黑棋先下)。  五子棋专用盘为 15×15 ,五连子的方向为横、竖、斜。  在棋盘上以对局双方均不可能形成五连为和棋。  首先形成五连子的一方为赢。 五子棋必须由双方进行游戏,当某一方按照一定规则连成五个棋子的时候,该游戏方就胜利,在本 章中,我们并不需要做到对战形式的,我们可以设计一个简单的“电脑”来做我们的对手,当我们下完 棋后,这个简单的“电脑”就随便在棋盘中下一个棋,当然,如果想做更强大的“电脑”我们可以编写 程序来实现,当我们下棋的时候,这个“电脑”就对我们所下的棋子进行检测,并将棋子下到最恰当的 位置。本章主要目的是展现五子棋的实现原理,如果读者有兴趣,可以自行开发强大的“人工智能电脑” 来进行游戏。 1.1.2 输入输出约定 玩家必须以(x,y )的方式输入棋盘的坐标,其中,x 代表棋坐标,y 代表竖坐标。x 与y 的值必须 是1 到N (棋盘的大小)的正数。 系统询问玩家是否继续游戏时,玩家输入y 是代表继续,输入其它则代表退出游戏。 “●”代表黑子,“○”代表白子。当玩家以(x,y )的形式输入下棋的坐标后,游戏中就可以根据 玩家所下的坐标,再去将棋子放置到棋盘中。我们可以将棋盘看作一个二维数组,填充着棋盘式的标志 (“十”),玩家下棋后,将棋子替换原来的标志,最后再执行输入。由于本章是在控制台中进行打印, 因此只需要使用 System.out.println 来进行打印即可,如果需要实现有界面的五子棋游戏,例如使用 ·2 · 第1 章 控制台五子棋 swing 或者 awt,可以使用相应的方法,将二维数组“画”到界面中。因此,不管是使用 swing、awt 或者其他界面技术,五子棋的实现原理几乎大同小异。 1.2 了解游戏流程描述 在开发五子棋之前,我们先了解一下游戏的整个游戏流程,了解游戏的流程,有助于我们在开发的 过程中可以清晰的掌握程序结构,对于实现功能有莫大的帮助,五子棋的具体流程如图1.1 所示。 图 1.1 五子棋游戏流程 1.2.1 玩家输入坐标 游戏开始,系统在控制台中打印出棋盘,玩家根据这个棋盘,选定下棋的位置坐标后,在控制台中 输入相应的坐标,系统读取玩家所输入的坐标并进行相应的分析,如果玩家所下的棋使得玩家游戏胜利, 则系统询问是否继续游戏。 系统读取了玩家输入的坐标后,除了判断游戏是否胜利外,还需要判断玩家输入的坐标中是否已经 存在了相应的棋子,如果存在的话,需要再次提示玩家,重新输入。

文档评论(0)

max + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档