50分求JAVA扑克代码 很简单,每次每人发5张牌,比大小就可以. 比如顺子大于对子 ,对子大于散牌.一共54张,小于10张时重新发牌 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你没有说老王怎么判断,我就没办法了,写了一个,希望对你有帮助,这个程序没有对牌的比较,首先是不知道老王这两张牌你想怎么比,还有就是懒得写了.请看吧.import java.util.*;class Pockers extends Stack //这是一副牌的类,里面有54张牌,wash方法为洗牌,继承堆栈,因为摸牌本来就是取上面一张.{ public Pockers() { this.add(new Pocker(Pocker.JOCKER_BLACK)); this.add(new Pocker(Pocker.JOCKER_RED)); //加入两个老王 for(int i=2;i<=14;i++) for(int j=1;j<=4;j++) { this.add(new Pocker(i,j)); //加入牌,j为花色 } for(int i=1;i<=4;i++) wash(); //洗牌四次 } public void wash() { Pocker temp=null; Random r=new Random(); for(int i=0;i<54;i++) { temp=(Pocker)this.pop(); this.insertElementAt(temp,Math.abs(r.nextInt()%54)); //将第i张牌插入到这副牌随机位置 } } public boolean needReWash() //判断是否要重洗. { return this.elementCount<10; } public void output() //这个是写程序测试用的. { for(int i=0;i<54;i++) { ((Pocker)this.get(i)).output(); } }}class Player //玩家类{ String name; public Pocker[] recieve=new Pocker[5]; public Player(int i) { if(i==1) name="玩家1"; else name="玩家2"; } public void getPocker(Pocker pocker,int queue) //得牌一张 { recieve[queue]=pocker; } public void showPocker() //显示玩家的牌 { System.out.println(name+"的牌为:"); for(int i=0;i<5;i++) { recieve[i].output(); } System.out.println(); }}class Judge //裁判{ public static void compare(Player player1,Player player2) //比较玩家的牌 { } public static void give(Pockers p,Player p1,Player p2) //发牌. { for(int i=0;i<5;i++) { p1.getPocker((Pocker)p.pop(),i); p2.getPocker((Pocker)p.pop(),i); } }}class Pocker //一张牌类{ static int BLOCK=1; static int FLOWER=2; static int HEART=3; static int PEACH=4; //本来开始打算用的花色字段,可惜没有用上.唉 static int JOCKER_RED=20; static int JOCKER_BLACK=10; public int number,flower; public Pocker(int number,int flower) //构造1,它是对一般牌的构造 { this.number=number; this.flower=flower; } public Pocker(int flower) //这个构造是用来构造jocker牌的. { this(100,flower); } public void output() //输出这一张牌,这儿用的是"(大小,花色)"格式. { System.out.print("("+number+","+flower+")"); }}public class a //游戏主函数.{ public static void main(String[] args) { Pockers p=new Pockers(); Player player1=new Player(1); Player player2=new Player(2); Judge.give(p,player1,player2); player1.showPocker(); player2.showPocker(); /* Judge.compare(player1,player2); //这儿没有写比较函数,这个浪费时间,懒得写,而且你没有说明JOCKER这张牌该怎么算,写了也白写,这个要你自己去写了,呵呵,方法写在Judge类的compare方法里,你可以适当的改一下,或者新建一个类什么的.呵呵. */ }} System.exit(0)的作用和与return的区别? reuqest对象清空问题 新人学习,大家帮我下 GUI 设计 java与军事的抉择 我用jbuild生成了exe文件的问题???急急急急 一个漂亮的彩球(偶写的),你一定会喜欢! 不要忘了投票哦!(kingcom) java中如何让一个选项卡的索引固定不变?????????? 调用dos程序的问题 Java有没有类似于msdn之类的东东?哪能下? 请问:目前JAVA在哪个方向发展的比较火,哪个方向较冷门? 求JAVA 3D中文帮助文档。
import java.util.*;
class Pockers extends Stack //这是一副牌的类,里面有54张牌,wash方法为洗牌,继承堆栈,因为摸牌本来就是取上面一张.
{
public Pockers()
{
this.add(new Pocker(Pocker.JOCKER_BLACK));
this.add(new Pocker(Pocker.JOCKER_RED)); //加入两个老王
for(int i=2;i<=14;i++)
for(int j=1;j<=4;j++)
{
this.add(new Pocker(i,j)); //加入牌,j为花色
}
for(int i=1;i<=4;i++) wash(); //洗牌四次
}
public void wash()
{
Pocker temp=null;
Random r=new Random();
for(int i=0;i<54;i++)
{
temp=(Pocker)this.pop();
this.insertElementAt(temp,Math.abs(r.nextInt()%54)); //将第i张牌插入到这副牌随机位置
}
}
public boolean needReWash() //判断是否要重洗.
{
return this.elementCount<10;
}
public void output() //这个是写程序测试用的.
{
for(int i=0;i<54;i++)
{
((Pocker)this.get(i)).output();
}
}
}class Player //玩家类
{
String name;
public Pocker[] recieve=new Pocker[5];
public Player(int i)
{
if(i==1) name="玩家1";
else name="玩家2";
}
public void getPocker(Pocker pocker,int queue) //得牌一张
{
recieve[queue]=pocker;
}
public void showPocker() //显示玩家的牌
{
System.out.println(name+"的牌为:");
for(int i=0;i<5;i++)
{
recieve[i].output();
}
System.out.println();
}
}class Judge //裁判
{
public static void compare(Player player1,Player player2) //比较玩家的牌
{
}
public static void give(Pockers p,Player p1,Player p2) //发牌.
{
for(int i=0;i<5;i++)
{
p1.getPocker((Pocker)p.pop(),i);
p2.getPocker((Pocker)p.pop(),i);
}
}
}class Pocker //一张牌类
{
static int BLOCK=1;
static int FLOWER=2;
static int HEART=3;
static int PEACH=4; //本来开始打算用的花色字段,可惜没有用上.唉
static int JOCKER_RED=20;
static int JOCKER_BLACK=10;
public int number,flower;
public Pocker(int number,int flower) //构造1,它是对一般牌的构造
{
this.number=number;
this.flower=flower;
}
public Pocker(int flower) //这个构造是用来构造jocker牌的.
{
this(100,flower);
}
public void output() //输出这一张牌,这儿用的是"(大小,花色)"格式.
{
System.out.print("("+number+","+flower+")");
}
}public class a //游戏主函数.
{
public static void main(String[] args)
{
Pockers p=new Pockers();
Player player1=new Player(1);
Player player2=new Player(2);
Judge.give(p,player1,player2);
player1.showPocker();
player2.showPocker();
/*
Judge.compare(player1,player2); //这儿没有写比较函数,这个浪费时间,懒得写,而且你没有说明JOCKER这张牌该怎么算,写了也白写,这个要你自己去写了,呵呵,方法写在Judge类的compare方法里,你可以适当的改一下,或者新建一个类什么的.呵呵.
*/
}
}