在线客服
扫描二维码
下载博学谷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课程设计蜘蛛纸牌的实战项目技巧总结。大家都明白了吗?如果懂了,就赶紧自己动手编写一个吧!
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Spring Cloud Alibaba微服务架构学什么?为什么要学?
为什么要学Spring Cloud Alibaba?Spring Cloud Alibaba本身也是Spring Cloud的子项目是其中的一部分。 如果使用的是第一代(eureka, hystrix, zuul),在2020之后有必要把这些组件替换掉的。在业界已经广泛使用.springcloud中有部分组件不维护了。
5773
2020-06-16 10:52:42
Mybatis的核心组件是什么?
MyBatis是一个基于Java的持久层框架,所谓的持久层框架就是专门用来将数据进行持久化的框架,也就是说将数据存储到数据库中的框架。学习并掌握Mybatis,首先就要了解Mybatis的核心组件。下面我们一起来了解一下Mybatis四大核心组件:SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession以及SQL Mapper。
6065
2020-08-17 12:21:16
MySQL常见问题及答案汇总
MySQL是一种开放源代码的关系型数据库管理系统。数据库按照数据结构来组织、存储和管理数据的仓库。每个数据库都有一个或多个不同的 API 用于创建,访问,管理,搜索和复制所保存的数据。
4172
2020-12-23 14:30:08
Java语言跨平台原理是什么?有哪些优势?
Java程序跨平台主要是指字节码文件可以在任何计算机或者电子设备上运行。Java语言目前很流行和Java很多优点分不开而Java的最大优点是就是跨平台。Java跨平台可以使用8个字概括:一次编译到处运行。
4716
2021-04-08 11:58:28
Java工程师避免内卷,看这篇就够了!
大家可能也都感觉到Java程序员也越来越来卷了,特别是初中级Java工程师更卷了;大家都有着类似的工作经历,你会的技术我也会。所以,如何破解这种职业瓶颈? 那就看谁更能卷了,谁能更快的学习,快速进入到高级、甚至架构师的行列,谁就能拥有话语权,在Java这个方向立稳脚跟。
2986
2022-09-16 10:44:41
