斗地主 洗牌 发牌 理牌
package com.company;
import com.sun.org.apache.xpath.internal.objects.XString;
import jdk.management.resource.internal.inst.FileOutputStreamRMHooks;
import java.util.*;
public class DouDiZhu {
public static void main(String[] args) {
List pokes=new ArrayList<>() ;
List<String> colors=new ArrayList<>() ;
List<String> numbers=new ArrayList<>() ;
colors.add("♡");
colors.add("♤");
colors.add("♦");
colors.add("♣");
numbers.add("A");
for(int i=2;i<=10;i++){
numbers.add(i+"");
}
numbers.add("J");
numbers.add("Q");
numbers.add("K");
for(String c:colors){
for(String n:numbers){
String pai=c+n;
pokes.add(pai);
}
}
pokes.add("小鬼");
pokes.add("大鬼");
System.out.println(pokes);
Collections.shuffle(pokes);
System.out.println(pokes);
ArrayList<String>lbw=new ArrayList<>();
ArrayList<String>pdd=new ArrayList<>();
ArrayList<String>hxd=new ArrayList<>();
ArrayList<String>dipai=new ArrayList<>();
for (int i=0;i<pokes.size();i++){
String pai=pokes.get(i);
if (i>=51){
dipai.add(pai);
}else {
if (i%3==0){
lbw.add(pai);
}else if (i%3==1){
pdd.add(pai);
}
else {
hxd.add(pai);
}
}
}
System.out.println("底牌"+dipai);
System.out.println("pdd的手牌"+pdd);
System.out.println("lbw的手牌"+lbw);
System.out.println("hxd的手牌"+hxd);
Comparator sortPK = new Comparator<String>() {
String numorder = "3,4,5,6,7,8,9,10,J,Q,K,A,2,小,大";
@Override
public int compare(String o1, String o2) {
o1 = o1.replaceAll("[^a-zA-Z0-9小大]", "");
o2 = o2.replaceAll("[^a-zA-Z0-9小大]", "");
int i1 = numorder.indexOf(o1);
int i2 = numorder.indexOf(o2);
return i1 - i2;
}
};
Collections.sort(pdd,sortPK);
Collections.sort(lbw,sortPK);
Collections.sort(hxd,sortPK);
System.out.println("pdd理完的手牌"+pdd);
System.out.println("lbw理完的手牌"+lbw);
System.out.println("hxd理完的手牌"+hxd);
}
}
效果