1.如果游戏是两副牌放在一起(不包括大小王),也就是104张,其中同样的牌各有两张。我的想法是建立一个ArrayList集合,先生成不重复的52张牌,然后复制这个集合,再把复制后的集合添加到原来的集合中,这样就实现了104张牌的集合。请问这样是否可实现?有没有其他好的方法?麻烦给出个示例代码,谢谢.2.这个游戏(Spite and Malice)类似windows纸牌游戏,把牌从A码到Q,然后牌会被回收,K是万能牌,也就是K可以当任意的牌用,但是只能比要放的牌大1。比如,牌码到了3,玩家如果手里有K,就可以放在3上面,K就自动变为4,或者码牌的地方是空的,玩家可以把K放在上面,K就会变为A。我的问题是,这个万能牌K我该如何实现?麻烦给个代码示例,谢谢了。3.有个牌堆是管发牌和回收牌的,也就是玩家从这个牌堆里面那牌,玩家玩的牌如果达到了要求(从A-Q),这套牌就会回收到这个牌堆里。所以一定意义上是循环使用。我的问题是,是当每次回收牌时到要重新洗一次牌?如果这样的话,那我该怎么定义这个类?我原来是想定义一个pack类(里面有洗牌方法),就是生成整套牌,然后定义一个hand类(里面没有洗牌方法),就是包括玩家手里的牌,和码的牌等,简单说就是零散的牌,不是整套的。如果需要每次都要回收洗牌,那我就需要再为hand类定义个方法?或者有什么其他办法实现呢?
谢谢各位了,问题多了点也傻了点,希望可以给出个思路和简单代码示例,非常的急!!!!
谢谢各位了,问题多了点也傻了点,希望可以给出个思路和简单代码示例,非常的急!!!!
解决方案 »
- 用三数中值分割法实现的快排问题,出现数组越界,求解
- 求助:有没有实现音频播放文件的Java类
- 求vista下读取硬盘序列好的程序
- 如何在文件菜单中控制最近打开的文件?
- 请教下分支定界怎么写..
- static final 类型的数据成员如何初始化?
- Enumeration该怎么理解!
- 详细设计伪代码怎么写,那个高手帮个忙,根据这个方法把它的伪代码写出来,万分感谢
- 如何把date类型的时间转换成GregorianCalendar类型的时间?
- 提议Java版面进行分类, j2ee, j2se, j2me....全部
- 手机应用软件开发还需要学jsp吗
- 高分简单问题:用2007年5月31日设置Calendar后为什么变成了2007年6月1日?如何克服这问题?
for(int i = 0;i < m.length;i++){
m[i] = i / 2;
}
跟具要求采用什么样的数据结构、
2把牌从A码到Q 放在队列,还是什么链表里面
你得到k的前一张就行了
class zhipai {
private int number ;
num huase{hongtao, fangkuai, meihua, heitao}
private huase zhonglei ;
public zhipai (int number, int zhonglei) {
this.number = number ;
switch(zhonglei){
case 1:
this.zhonglei = hongtao ;break ;
case 2:
...
} }
}public class test
{
List<zhipai> pai = new ArrayList<zhipai> ;
public static void main(String[] args) {
for(int i=0; i<104; i++){
zhipai a = new zhipai(i/4+1, i%4+1);
pai.add(a) ;
}
}
}我不确定会不会有些语法上的小毛病