package com.itheima;
import java.util.ArrayList;
import java.util.Collections;
import java.util.TreeMap;
import java.util.TreeSet;
public class Main{
public static void main(String[] args)
{
//存储编号和花色
TreeMap<Integer, String> pokers = new TreeMap<Integer, String>();
//花色和编号
String[] colors = {"黑桃", "红桃", "方块", "梅花"};
String[] numbers = {"3","4","5","6","7","8","9","10","J","O","K","A","2"};
//储存编号
ArrayList<Integer> indexes = new ArrayList<Integer>();
//编号对应编号和花色
int index = 0;
for(String number: numbers)
for(String color: colors)
{
pokers.put(index, color + number);
indexes.add(index);
index++;
}
pokers.put(index, "大王");
indexes.add(index);
index++;
pokers.put(index, "小王");
indexes.add(index);
//洗牌
Collections.shuffle(indexes);
//发牌
TreeSet<Integer> first = new TreeSet<Integer>();
TreeSet<Integer> second = new TreeSet<Integer>();
TreeSet<Integer> third = new TreeSet<Integer>();
TreeSet<Integer> end = new TreeSet<Integer>();
for(int i = 0; i < indexes.size(); i++)
{
if(i >= indexes.size() - 3)
end.add(indexes.get(i));
else if(i % 3 == 0)
first.add(indexes.get(i));
else if(i % 3 == 1)
second.add(indexes.get(i));
else if(i % 3 == 2)
third.add(indexes.get(i));
}
//看牌
lookPoker("张三", first, pokers);
lookPoker("李四", second, pokers);
lookPoker("王五", third, pokers);
lookPoker("底牌", end, pokers);
}
public static void lookPoker(String name, TreeSet<Integer> indexes, TreeMap<Integer, String>pokers) {
System.out.print(name+"的牌为: ");
for(Integer index : indexes)
{
System.out.print(pokers.get(index) + " ");
}
System.out.println();
}
}
java基础案例6-4斗地主洗牌发牌
最新推荐文章于 2023-07-28 15:25:01 发布