public static void main(String[] args) throws Exception {
List<String> strList = Lists.newArrayList();
strList.add("♠");
strList.add("♣");
strList.add("♥");
strList.add("♦");
List<String> numList = Lists.newArrayList();
numList.add("A");
numList.add("2");
numList.add("3");
numList.add("4");
numList.add("5");
numList.add("6");
numList.add("7");
numList.add("8");
numList.add("9");
numList.add("10");
numList.add("J");
numList.add("Q");
numList.add("K");
List<String> sumStrList = Lists.newArrayList();
strList.forEach(e -> numList.forEach(t -> sumStrList.add(e.concat(t))));
sumStrList.add("Red King");
sumStrList.add("Black King");
Collections.shuffle(sumStrList);
List<String> firstPokerList = getPokerList(sumStrList);
sumStrList.removeAll(firstPokerList);
List<String> secondPokerList = getPokerList(sumStrList);
sumStrList.removeAll(secondPokerList);
List<String> thirdPokerList = getPokerList(sumStrList);
sumStrList.removeAll(thirdPokerList);
System.out.println("玩家1 : " + JSONObject.toJSONString(firstPokerList));
System.out.println("玩家2 : " + JSONObject.toJSONString(secondPokerList));
System.out.println("玩家3 : " + JSONObject.toJSONString(thirdPokerList));
System.out.println("底牌 : " + JSONObject.toJSONString(sumStrList));
}
private static List<String> getPokerList(List<String> poker) {
List<String> strList = Lists.newArrayList();
int index = 0;
for (int i = 0; i < 17; i++) {
index = ThreadLocalRandom.current().nextInt(poker.size() - 1);
strList.add(poker.get(index));
poker.remove(poker.get(index));
}
return strList;
}