zoukankan      html  css  js  c++  java
  • 关于java洗牌发牌小程序

    package play.card;

    public class Card {
    public String num;
    public String suit;
    public Card(String num,String suit) {
    this.num = num;
    this.suit = suit;
    }

    public Card() {
    super();
    }

    @Override
    public String toString() {
    String str = suit+" "+ num;
    return str;
    }
    }

    package play.card;

    import java.util.ArrayList;
    import java.util.List;

    public class Player {
    public String name;
    public List<Card> cards;
    public Player(String name) {
    super();
    this.name = name;
    }

    public Player() {
    super();
    }

    //获取手牌
    public void getCard(Card card){
    if (cards == null) {
    cards = new ArrayList<Card>();
    }
    cards.add(card);
    }

    @Override
    public String toString() {
    return name + ":" + cards.toString();
    }
    }

    package play.card;

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

    public class DeskOfCard {
    List<Card> cards;
    //创建一副手牌
    public void initCard(){
    String [] nums = {"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
    String [] suits = {"方块","梅花","红桃","黑桃"};
    cards = new ArrayList<Card>();
    //先创建四种花色的牌

    for (int i = 0; i < 52; i++) {
    cards.add(new Card(nums[i%13],suits[i%3]));
    }
    System.out.println("------------创建扑克牌-----------------");
    System.out.println("-------------扑克牌创建成功-------------");
    System.out.println("全部扑克牌:");
    System.out.println(cards);
    }
    public static void main(String[] args) {
    DeskOfCard test = new DeskOfCard();
    test.initCard();//初始化
    Collections.shuffle(test.cards);//洗牌
    //创建玩家
    Player pl1 = new Player("Cute");
    Player pl2 = new Player("Jane");
    Player pl3 = new Player("katte");
    //发牌
    for (int i = 0; i < 52; i++) {
    if(i%3==0){
    pl1.getCard(test.cards.get(i));
    }
    if(i%3==1){
    pl2.getCard(test.cards.get(i));
    }
    if(i%3==2){
    pl3.getCard(test.cards.get(i));
    }
    }
    System.out.println("玩家拿到手的牌为:");
    System.out.println(pl1.toString());
    System.out.println(pl2.toString());
    System.out.println(pl3.toString());

    }

    }

  • 相关阅读:
    RMQ(非log2储存方法)
    2016年5月份学习记录
    NOIP200504循环
    膜拜acm大牛 虽然我不会这题,但是AC还是没有问题的~(转自hzwer)
    最长公共子序列的长度
    菜鸟,大牛和教主三者的区别(转自hzwer)
    NOIP201205Vigenère密码
    NOIP200503采药
    公路乘车
    NOIP200902分数线划定
  • 原文地址:https://www.cnblogs.com/mengjie1001/p/6107030.html
Copyright © 2011-2022 走看看