需求:通过程序实现斗地主过程的洗牌,发牌和看牌。要求:对牌进行排序
HashMap
key | value | ArrayList洗牌 |
0 | ♦3 | 0 |
1 | ♣3 | 1 |
2 | ♥3 | 2 |
3 | ♠3 | 3 |
4 | ♦4 | 4 |
5 | ♣4 | 5 |
... | ... | ... |
52 | 大王 | 52 |
53 | 小王 | 53 |
发牌
TreeSet
1,5 | 2,3 | 0,52 |
看牌
♣3 ♣4 | ♥3 ♠3 | ♦3 小王 |
思路:
1.创建HashMap,键是编号,值是牌
2.创建ArrayList,存储编号
3.创建花色点数组和点数数组
4.从0开始往HashMap里面存储编号,并存储对应的牌。同时往ArrayList里面存储编号
5.洗牌(洗的是编号),用Collections的shufle()方法实现
6.发牌(发的也是编号,为了保证编号是排序的,创建TreeSet集合接收)
7.定义方法看牌(遍历TreeSet集合,获取编号,到HashMap集合找对应的牌)
8.调用看牌方法