在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
相信大家对蜘蛛纸牌这个游戏本身并不陌生,它是一款桌面休闲益智类游戏。本文小编将来介绍Java课程设计——蜘蛛纸牌。本文主要总结了该项目的简介、采用技术、亮点和主要类及关键代码。

一、蜘蛛纸牌项目简介。
该课程设计内容主要是模拟实现蜘蛛纸牌游戏,《蜘蛛纸牌》是由Oberon Games开发的一款休闲益智类游戏,该游戏已由Microsoft于2010年发行。同时该游戏也是Windows ME及后续版本所自带的小游戏,游戏目标是以最少的移动次数将牌面中的十叠牌以及待发的五副,共计八副牌整理移除。当所有牌都被移除整理之后,游戏获胜。
二、蜘蛛纸牌项目采用技术。
JAVA
GUI
三、蜘蛛纸牌项目亮点。
1、实现了简单、正常、复杂三种不同难度的玩法
2、可以显示可行性操作
四、蜘蛛纸牌项目主要类及关键代码。
//方法:显示可移动的操作
public void showEnableOperator(){
int x = 0;
out: while (true){
Point point = null;
PKCard card = null;
do{
if (point != null){
n++;
}
point = this.getLastCardLocation(n);
while (point == null){
point = this.getLastCardLocation(++n);
if (n == 10) n = 0;
x++;
if (x == 10) break out;
}
card = (PKCard) this.table.get(point);
}
while (!card.isCardCanMove());
while (this.getPreviousCard(card) != null
&& this.getPreviousCard(card).isCardCanMove()){
card = this.getPreviousCard(card);
}
if (a == 10){
a = 0;
}
for (; a < 10; a++){
if (a != n){
Point p = null;
PKCard c = null;
do{
if (p != null){
a++;
}
p = this.getLastCardLocation(a);
int z = 0;
while (p == null){
p = this.getLastCardLocation(++a);
if (a == 10) a = 0;
if (a == n) a++;
z++;
if (z == 10) break out;
}
c = (PKCard) this.table.get(p);
}
while (!c.isCardCanMove());
if (c.getCardValue() == card.getCardValue() + 1){
card.flashCard(card);
try{
Thread.sleep(800);
}
catch (InterruptedException e){
e.printStackTrace();
}
c.flashCard(c);
a++;
if (a == 10){
n++;
}
break out;
}
}
}
n++;
if (n == 10){
n = 0;
}
x++;
if (x == 10){
break out;
}
}
}
以上就是Java课程设计蜘蛛纸牌的实战项目技巧总结。大家都明白了吗?如果懂了,就赶紧自己动手编写一个吧!
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Java学习中关于并发编程的问题总结
Java编程开发学习需要掌握的知识点很多,并发编程作为Java学习中的难点,也是实际应用中最常用的。编写优质的碧昂发代码并不是一件容易的事情。但是如果我们对并发编程有了更多的认识和实践,就会有更多的方案和更好的选择来实现并发编程。下面就是针对Java学习中关于并发编程的问题总结。
13180
2019-08-08 14:08:47
自学Java比培训的学习效果差吗?
自学Java比培训的学习效果差吗?答案不是一定的,毕竟每个人的自学能力都不一样,而且每家培训机构的教学实力也不能一概而论。这里以博学谷的教学内容为例,比起大部分自学者的埋头苦学,博学谷的Java教学有着三点无可比拟的优势,即知识点更系统,更前沿,且与实战项目结合。下面详细来谈谈比起自学参加Java培训的优势。
6334
2019-10-28 16:41:46
Redis6.0引入多线程有哪些好处?
Redis6.0新版本在五月初重磅发布,我们可以清晰地发现Redis6.0新版本引入了多线程。相信大家一定都十分好奇,Redis6.0引入多线程究竟有哪些好处呢?下面我们就来逐一分析一下引入多线程的诸多好处~
7664
2020-05-29 18:52:04
Java程序员为什么要学Tomcat架构?
相信对于许多Java程序员来说,Tomcat架构并不陌生,它几乎是每个Java初学者在入门之后必学的基础知识之一。那么,相信很多Java零基础小白都会有这样的疑问:Java程序员为什么要学Tomcat架构?理由其实很简单,Tomcat架构是目前JavaEE开发中最主流的服务器之一 。下面我们来看看学习Tomcat架构的具体原因。
7485
2020-06-18 17:38:57
Java语言发展史及发展前景分析
Java语言发展史及发展前景分析,Java面向对象编程语言出生于1995年5月,Java功能强大和简单易用,应用领域非常广泛。Java语言具有安全、可靠等优势,且属于分布式、多线程和面向对象语言,对于这方面的人才需求量很大。
10485
2020-08-03 15:31:48
