A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 沙迦 中级黑马   /  2015-4-26 19:55  /  627 人查看  /  17 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package yong.wan.day0426;
/**
* 模拟斗地主发牌
*/
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class DouDiZhuDemo {
        public static void main(String[] args) {
                String[] color = { "黑桃", "梅花", "红心", "方块" };
                String[] numbers = { "A", "2", "3", "4", "5", "6", "7", "8", "9", "10",
                                "J", "Q", "K" };
                List<String> li = new ArrayList<String>();
                //添加大小鬼
                li.add("大鬼");
                li.add("小鬼");
                //获取具体每张跑
                for (int i = 0; i < color.length; i++) {
                        for (int j = 0; j < numbers.length; j++) {
                                li.add(color[i].concat(numbers[j]));
                        }
                }
                //for循环装牌
                //增强for更快更方便
                /*for (String c : color) {
                for (String n : numbers) {
                        //通过增强循环将牌装入集合中
                        al.add(c.concat(n));
                }
        }
        //洗牌
         *
*/
                Collections.shuffle(li);
                System.out.println(li);
                List<String> lin = new ArrayList<String>();
                List<String> zhang = new ArrayList<String>();
                List<String> liu = new ArrayList<String>();

                for (int i = 0; i < li.size() - 3; i++) {
                        if (i % 3 == 0) {
                                lin.add(li.get(i));
                        } else if (i % 3 == 1) {
                                zhang.add(li.get(i));
                        } else if (i % 3 == 2) {
                                liu.add(li.get(i));
                        }
                }
                //显示每个人拿的牌
                System.out.println("lin:" + lin);
                System.out.println("张:" + zhang);
                System.out.println("liu:" + liu);
                //显示3张底牌
                for (int i = li.size()-3; i < li.size(); i++) {
                        System.out.println(li.get(i));
                }
        }
}

评分

参与人数 1技术分 +1 收起 理由
lwj123 + 1 赞一个!

查看全部评分

17 个回复

倒序浏览
顶一下。。。。。。。。。。。。。
回复 使用道具 举报
你太牛了
回复 使用道具 举报
会java自己搞一个程序就是爽,顶起,还没有学集合,要不也可以试下
回复 使用道具 举报
最好贴张效果图哇~~~我想看看效果复制下来编译报错。。。
回复 使用道具 举报
你真牛~ 顶!
回复 使用道具 举报
不错,学习啦
回复 使用道具 举报
这个必须顶一下
回复 使用道具 举报
Voyage 中级黑马 2015-4-27 14:35:47
9#
没有地主牌,和地主啊?
回复 使用道具 举报
cody 中级黑马 2015-4-27 15:10:57
10#
66666666666666666
回复 使用道具 举报
Voyage 发表于 2015-4-27 14:35
没有地主牌,和地主啊?

地主还没抢呢
   只能是发牌
回复 使用道具 举报
挺不错的,继续努力
回复 使用道具 举报
ding........
回复 使用道具 举报
不错!顶一下
回复 使用道具 举报
牛   学习了
回复 使用道具 举报
好牛逼的样子
回复 使用道具 举报
强大,有技术就是牛
回复 使用道具 举报
楼主 顶起赞
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马