Java程序设计
thdgth
这个作者很懒,什么都没留下…
展开
-
Java程序设计:五子棋(四)——AI算法
一、前言前面我们讲述了如何进行绘制棋盘,以及悔棋的基本逻辑与算法实现,接下来我们就来讲讲大家最感兴趣的部分:如何实现人机对战。二、获取权值首先,我们来回想一下当我们在下棋时,是如何去决定下一步要下在哪里的?首先,我们要先纵观全局,看一看我们的棋子有没有已经成4个连子的情况,如果有的话肯定就下这个位置,这样我们这一回合就赢了。如果没有的话,那么接下来就要看对手的棋子有没有已经成4个连子的...原创 2019-10-31 14:56:18 · 2130 阅读 · 3 评论 -
Java程序设计:计算器(一)
1.设计界面2.设计思路①设计出界面②JTextField在定义的时候构造函数可以给一个String参数作为初始内容,比如JTextField jf = new JTextField(“a”);这样界面上的JTextField显现出来时一开始显示的内容就是a了计算器中可以一开始显示0③定义两个属性(最好是double型)dataA和dataB,dataA存储目前显...原创 2019-02-18 00:03:48 · 8366 阅读 · 0 评论 -
Java程序设计:计算器(二)
1.设计界面2.功能要求①实现加减乘除功能,按下加减乘除键后再按数字则会清空当前界面来存放新的数字。当被除数为0时要有放错机制。*界面的切换在JFrame类中有方法dispose(),这个方法可以关闭对应的JFrame并删去其内存,从而实现对象所对应的界面的关闭。*按钮的嵌套监听如果在方法中直接通过嵌套格式对某一组件进行添加监听的工作,要注意虽然代码是写在一个同一个方法...原创 2019-02-18 00:04:58 · 1489 阅读 · 0 评论 -
Java程序设计:五子棋(一)——编写界面
1.界面的预处理与刷新我们要绘制五子棋棋盘,首先必须明确一点:不管我们在棋盘上怎么操作,棋盘的网格线是不可能改变的。无论是下棋,悔棋,网格线都会在那。故而我们应该知道,要想网格线始终存在,我们需要在后台存在一个绘制代码,一直不断的画这些网格线,同样在这一个代码区将来我们下了棋子之后也要不断的在下棋的位置画上棋子。那么这样的代码区在哪呢?我们知道我们绘制界面的大框架是JFrame,其他的组件...原创 2019-02-18 00:08:00 · 13360 阅读 · 3 评论 -
Java程序设计:五子棋(二)——添加棋子
如何添加棋子我们平时也在不同平台上玩过类似的棋盘游戏,一般的棋盘游戏的玩法都是在你想下的位置点一下,系统就会在你点的位置下一个棋子。五子棋的棋盘很规则,都是一个个正方形格子,点一个位置便会在那附近的格子角下一颗棋子。那么怎么判断是哪个角呢?一般简单的定义一下就能解决。以一个格子为例,假设点在这个格子中,位置为(x,y),而这个格子的某个顶点位置已知(一般是左上角),比如左上角位置为(a,b)...原创 2019-02-18 18:30:57 · 6256 阅读 · 3 评论 -
Java程序设计:五子棋(三)——悔棋
如何悔棋在玩棋盘游戏中,玩家很容易下错棋。可在虚拟游戏中,电子玩家可不像现实生活中那样,商量几句就让你几步。因此一个人性化的棋盘类游戏应该具备悔棋功能。说到悔棋,大部分程序员第一个反应就是把上一个下的棋子撤销不就行了?现在我们仔细想想这种方法的可行性。要想记住上一个棋子下的位置很容易,只需要定义两个参数,用来存放上一个下的棋子的行和列即可。但如果是要毁很多步呢,或者一般人机对战时,默认的悔一...原创 2019-02-18 19:29:27 · 10625 阅读 · 5 评论