黑马程序员技术交流社区

标题: 斗地主的小程序,编到发完牌 ,还不会出牌的编程 [打印本页]

作者: Flyxiang    时间: 2016-12-3 23:45
标题: 斗地主的小程序,编到发完牌 ,还不会出牌的编程
package Practice;



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

/*
* 成龙,甄子丹,李连杰三个人打斗地主,三人约定,洗牌后,随机抽取一张"明牌"并夹在中间;然后依次抓牌,谁抓到这张便自动作为地主,并收取最后三张。
要求:请用程序实现这一过程,最后打印地主名,以及三个人的牌(要求排序);

思路:
  1.定义一个Map集合存储一副扑克牌;List存储编号;
  2.洗牌;
  3.随机抽取一个索引(该值必须在倒数三张之前),用于表示"明牌",在发牌
    时谁抓到这一张便作为"地主";
  4.依次给三个人(成龙,甄子丹,李连杰)发牌,并监督谁作为地主;地主自
     动收取最后三张。
  5.打印地主名;
  6.最后以排序后的方式打印每个人手里的牌;

*/

public class No3 {

        public static void main(String[] args) {
                //创建牌盒
                HashMap<Integer, String> pokerBox=new HashMap<Integer,String>();
               
                //创建牌面
                //color
                List<String> color=new ArrayList<String>();
                Collections.addAll(color, "♦","♣","♥","♠");
               
                //number
                List<String> number=new ArrayList<String>();
                Collections.addAll(number, "3","4","5","6","7","8","9","10","J","Q","K","A","2");
                List<Integer> indexList=new ArrayList<Integer>();
                int index=1;
                for (String num : number) {
                        for (String colr : color) {
                               
                                String poker=colr+num;
                                indexList.add(index);
                                pokerBox.put(index++, poker);
                               
                        }
                }
               
                //小王 和大王的添加
                indexList.add(index);
                pokerBox.put(index++, "小
作者: 生活如此多娇    时间: 2016-12-3 23:48
厉害了,,我的哥!!!
作者: 驰骋向前    时间: 2016-12-4 00:16
怎一个好字了得,259的吧





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2