扑克类的实现
2016-01-22 13:46
155 查看
package com.loco;
/**
* 扑克类(一副扑克)
* @author Administrator
*
*/
public class Poker {
private static String[] suites = {"黑桃","红桃","草花","方块"};
private static int[] faces = {1,2,3,4,5,6,7,8,9,10,11,12,13};
private Card[] cards;
/**
* 构造器
*/
public Poker(){
cards = new Card[52];
for(int i=0;i<suites.length;i++){
for(int j=0;j<faces.length;j++){
cards[i*13 + j] = new Card(suites[i],faces[j]);
}
}
}
/**
* 洗牌
* @author Administrator
*
*/
public void shuffle(){
for(int i=0,len=cards.length;i<len;i++){
int index = (int) (Math.random() * len);
Card temp = cards[index];
cards[index] = cards[i];
cards[i] = temp;
}
}
/**
* 发牌
* @author Administrator
*
*/
public Card deal(int index){
return cards[index];
}
/**
* 卡片类(一张扑克)
* @author Administrator
*
*/
public class Card{
private String suite;
private int face;
public Card(String suite, int face) {
this.suite = suite;
this.face = face;
}
public String toString(){
String faceStr = "";
switch(face){
case 10:faceStr = "A";break;
case 11:faceStr = "J";break;
case 12:faceStr = "Q";break;
case 13:faceStr = "K";break;
default:faceStr = String.valueOf(face);
}
return suite + faceStr;
}
}
}
package com.loco;
public class PokerTest {
public static void main(String[] args) {
Poker poker = new Poker();
poker.shuffle();
// Poker.Card c1 = poker.deal(0);
for(int i=1;i<=52;i++){
if(i%10==0){
System.out.println(poker.deal(i-1));
}else{
System.out.print(poker.deal(i-1) + " ");
}
}
}
}
引用地址:http://blog.csdn.net/jackfrued/article/details/17339393
/**
* 扑克类(一副扑克)
* @author Administrator
*
*/
public class Poker {
private static String[] suites = {"黑桃","红桃","草花","方块"};
private static int[] faces = {1,2,3,4,5,6,7,8,9,10,11,12,13};
private Card[] cards;
/**
* 构造器
*/
public Poker(){
cards = new Card[52];
for(int i=0;i<suites.length;i++){
for(int j=0;j<faces.length;j++){
cards[i*13 + j] = new Card(suites[i],faces[j]);
}
}
}
/**
* 洗牌
* @author Administrator
*
*/
public void shuffle(){
for(int i=0,len=cards.length;i<len;i++){
int index = (int) (Math.random() * len);
Card temp = cards[index];
cards[index] = cards[i];
cards[i] = temp;
}
}
/**
* 发牌
* @author Administrator
*
*/
public Card deal(int index){
return cards[index];
}
/**
* 卡片类(一张扑克)
* @author Administrator
*
*/
public class Card{
private String suite;
private int face;
public Card(String suite, int face) {
this.suite = suite;
this.face = face;
}
public String toString(){
String faceStr = "";
switch(face){
case 10:faceStr = "A";break;
case 11:faceStr = "J";break;
case 12:faceStr = "Q";break;
case 13:faceStr = "K";break;
default:faceStr = String.valueOf(face);
}
return suite + faceStr;
}
}
}
package com.loco;
public class PokerTest {
public static void main(String[] args) {
Poker poker = new Poker();
poker.shuffle();
// Poker.Card c1 = poker.deal(0);
for(int i=1;i<=52;i++){
if(i%10==0){
System.out.println(poker.deal(i-1));
}else{
System.out.print(poker.deal(i-1) + " ");
}
}
}
}
引用地址:http://blog.csdn.net/jackfrued/article/details/17339393
相关文章推荐
- jar打包成exe,或者服务进行运行
- ECharts 柱状图
- 【PHP进阶篇】3.类与面向对象--慕课网【学习总结】
- 大数据(十三) - Azkaban
- 2 - Add Two Numbers
- error: declaration may not appear after executable statement in block
- [Unity3D] 5.0 图集合并扩展工具,用于解决UGUI与AssetBundle打包造成资源包过大的问题
- 数据结构学习之顺序表(二)
- Spring+MVC项目发布停止
- DirectX的error LNK2019: 无法解析的外部符号 _Direct3DCreate9@4,该符号在函数 "long __cdecl InitD3D(struct HWND__ *)"
- Android中的PopupWindow详解
- FtpClient对ftp服务器进行上传及下载
- BZOJ2190 [SDOI2008] 仪仗队
- 腾讯对外分享组件接口文档
- jQuery中attr()函数 VS prop()函数
- 自创点名器
- 链表排序
- document.all笔记
- dll和so文件区别与构成
- java前台传参json,后台用map或者实体对象接收