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

package z.Collections;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;
/*思路:
* 1,买牌,
* 创建两个String类型的数组,分别建立花色数组(黑桃,红桃,梅花,方块) 和(1-k)
*
* 定义一个集合,存放大王小王。
* 使用for嵌套循环,使用string中的concat方法,将花色组合点数组结合起来。装入集合当中去

* 2,洗牌
* 使用Collections.shuffle()将拍随机打乱
* 3,发牌
* 使用for循环遍历所有的牌,遍历的同时,判断x%3=0 则把牌发给第一个人。如果x%3=1,则把牌发给第二个人,如果x%3=2,
* 则把牌发给第三个人。这样就能平均
* 遍历的同时,将牌数总数减一留作底牌,再将其遍历输出
* 4,开牌
* 输出打印三个人各自的牌
*
*
*/

public class DouDiZhu {
          public static void main(String[] args) {
                  //定义花色数组
                  String []s={"黑桃","红桃","梅花","方块"};
                  
//              定义点数数组
                  String []s1={"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
                  
//                  定义一个集合,将牌装入集合当中
                  ArrayList<String> l=new ArrayList<String>();
                  l.add("大王");
                  l.add("小王");
                  
                  
                  
                  for(String s2:s){ //使用加强for,需要遍历的对象为S 当s为黑桃时
                        for(String s3:s1)  {// 遍历点数数组,当s为黑桃时,点数数组为A
                                l.add(s2.concat(s3));//将黑桃和A组合成黑桃A,存入数组当中,以下循环
                        }
                  }
                  
//                  洗牌
                  Collections.shuffle(l)  ;
                  
//                  发牌
                  System.out.println("发牌中");
                  ArrayList<String> 乐乐=new ArrayList<String>();
                  ArrayList<String> 威威=new ArrayList<String>();
                  ArrayList<String> 胖树=new ArrayList<String>();
                  
                  for (int x=0;x<l.size()-3;x++) {
                                if(x%3==0){
                                        乐乐.add(l.get(x));
                                }
                                if(x%3==1){
                                        威威.add(l.get(x));
                                       
                                }
                                if(x%3==2){
                                        胖树.add(l.get(x));
                                }
                        }
                  System.out.println("发牌结束,请叫地主");
                while(true){
                  Scanner sc=new Scanner(System.in);
                  
                  
                  
                  System.out.println("1");
                 
                  System.out.println("2");
                 
                  System.out.println("3");
                w: System.out.println("请叫分");
                  String s7=sc.nextLine();
                  switch(s7){
                  case"1": {
                      System.out.println("叫一分");
                       System.out.println("没有抢到地主,请等候");
                       break;}
                  case"2":{
                          System.out.println("叫两分");
                          System.out.println("没有抢到地主,请等候");
                         break;}
                  case"3":{
                          System.out.println("叫三分");
                          System.out.println("恭喜,您抢到了地主,请看底牌");
                          for (int i = l.size()-3; i < l.size() ;i++) {
                              乐乐.add(l.get(i));
                              System.out.println(l.get(i));
                                   
                          }
               
}
               
                  System.out.println("乐乐的牌"+乐乐);
                  System.out.println("威威的牌"+威威);
                  System.out.println("胖树的牌"+胖树);
                        }
               
                                    
          }
}
}

评分

参与人数 1黑马币 +10 收起 理由
zimi626 + 10 很给力!

查看全部评分

11 个回复

倒序浏览
写的挺不错的,不过还需要努力,很多需要完善。
回复 使用道具 举报
惊呆中Σ( ° △ °|||)︴
回复 使用道具 举报
看不懂,都是大神啊我才基础班
回复 使用道具 举报
给力,赞一个
回复 使用道具 举报
牛逼 楼主加油
回复 使用道具 举报
楼主好有面子
回复 使用道具 举报
写的很不错...
回复 使用道具 举报
楼主现在是什么级别。。。。。
回复 使用道具 举报
牛神啊,加油啊
回复 使用道具 举报
真厉害,学习多长时间了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马