Playcard程序代码.doc_第1页
Playcard程序代码.doc_第2页
Playcard程序代码.doc_第3页
Playcard程序代码.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

public class PlayCard implements StyleValue/设置成静态,避免这些数据不必要的多存储几次,如果考虑到以后要改的话可以把这两个常量数组写在一个接口里/public static final String STYLE = 方块,梅花,红心,黑桃;/public static final String VALUE = 3,4,5,6,7,8,9,10,J,Q,K,A,2;/private int style;/设置成int型方便以后比较,都是int的比较,方便使用算法等操作private int value;public PlayCard(int style, int value) super();this.style = style;this.value = value;public int getStyle() return style;public void setStyle(int style) this.style = style;public int getValue() return value;public void setValue(int value) this.value = value;Overridepublic String toString() return STYLEthis.style+VALUEthis.value;import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.List;public class PlayBox List list = new ArrayList();/构造方法,将52张牌放入到数组中public PlayBox()for(int i=0;i52;i+)/这里i=0开始,也是为后面算法方便list.add(new PlayCard(i%4,i/4);/取整和取余的结合使用,达到嵌套循环的同样效果/洗牌public void shuffle()Collections.shuffle(list);/花色排序主导public void sort1()Collections.sort(list, new Comparator()/可以直接写成匿名内部类Overridepublic int compare(PlayCard o1, PlayCard o2) return (o1.getStyle()*13+o1.getValue()-(o2.getStyle()*13+o2.getValue(););/牌值排序主导public void sort2()Collections.sort(list, new Comparator()/可以直接写成匿名内部类Overridepublic int compare(PlayCard o1, PlayCard o2) return (o1.getValue()*4+o1.getStyle()-(o2.getValue()*4+o2.getStyle(););/输出public void show()for(PlayCard p:list)System.out.println(p);/因为这个比较器只是在这里用,所以可以写成一个内部类更好,而这个类只定义用了一次,就可以直接定义成匿名内部类/class CardComparator implements Comparator/泛型/Override/public int compare(PlayCard o1, PlayCard o2) /return (o1.getStyle()*13+o1.getValue()-(o2.getStyle()*13+o2.getValue();/public interface StyleValue public static final String STYLE = 方块,梅花,红心,黑桃;public static final String VALUE = 3,4,5,6,7,8,9,10,J,Q,K,A,2;public class TestPlayCard public static void main(String args) PlayBox pb = new PlayBox();pb.shuffle();pb.show();System.out.p

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论