用JAVA写个代码,实现52张牌随机分给四个人

发布网友

我来回答

2个回答

热心网友

java内的Collections类自带了一个shuffle洗牌算法。

static void shuffle(List<?> list)
使用默认随机源对指定列表进行置换。
static void shuffle(List<?> list, Random rnd)
使用指定的随机源对指定列表进行置换。

现在你可以把52张牌放进一个List里,调用他的shuffle算法打乱顺序。

热心网友

//参考了楼上的建议,调试成功……
我也是第一次用这个洗牌方法,还不错……
里面写了个方法,只要是生成扑克牌的list,排的花色我随便用的字母表示的,自己看吧,记得追加点分

import java.util.ArrayList;
import java.util.List;
import java.util.Collections;

public class XiPai {

private String Rt="rt"; //red
private String Bt="Bt"; //black
private String Fp="FP";
private String Mh="MH";

public List getPKList(){
String pkColor = "";
String pkNum;
List pkList = new ArrayList();
for(int i=1;i<=4;i++){
if(i==1){
pkColor=Rt;
}else if(i==2){
pkColor=Bt;
}else if(i==3){
pkColor=Fp;
}else{
pkColor=Mh;
}
for(int j=1;j<=13;j++){
pkNum=j+pkColor;
pkList.add(pkNum);
}
}
Collections.shuffle(pkList);
System.out.println(pkList.size());
for(int k=0;k<pkList.size();k++){
System.out.print(" "+pkList.get(k).toString());
}
return pkList;

}

public static void main(String[] args) {
// TODO Auto-generated method stub
XiPai x = new XiPai();
x.getPKList();
}

}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com