精华内容
下载资源
问答
  • 源自:7-1 简易扑克牌游戏java在不同类中调用一个集合,发牌方法调用扑克牌类里的list为0???--------首先是扑克牌类的list集合, ----------------------------------------------------------package cardGame;import...

    源自:7-1 简易扑克牌游戏

    java在不同类中调用一个集合,发牌方法调用扑克牌类里的list为0???

    --------首先是扑克牌类的list集合, ----------------------------------------------------------

    package cardGame;

    import java.util.ArrayList;

    import java.util.Collections;

    import java.util.List;

    public class ShuffleAllCards {

    public List cards;

    public ShuffleAllCards(){

    this.cards = new ArrayList();

    }

    /**

    * 生成所有52张牌

    * */

    public void CardsCreate(){

    System.out.println("-----------游戏开始!-----------");

    //通过遍历得到所有52张牌.

    String[] number = {"A","2","3","4","5","6","7","8","9","10","J","Q","K"};

    String[] color = {"黑桃","红桃","梅花","方块"};

    for(int i=0;i

    for (int j = 0; j < color.length; j++) {

    //第一个是 黑桃A, 然后 红桃A,

    String OneCard = color[j]+number[i];

    //每一次都加到List里,list是有序的.

    cards.add(OneCard);

    }

    }

    if(cards.size() == 52){

    System.out.println("-----------生成扑克牌成功-------");

    }

    }

    /**

    * 打乱所有52张牌的顺序

    * */

    public void ShuffleCards(){

    System.out.println("-----------开始洗牌-----------");

    Collections.shuffle(cards);

    System.out.println(cards.size());  //-----------------------这里输出的是52,是对的--------------------

    System.out.println("-----------洗牌结束-----------");

    }

    }

    ---然后在游戏类里的发牌方法里调用上面的list集合,给玩家的手牌, 想先看看list的大小, 居然是0,但是在扑克牌类里是52呀...-------------

    package cardGame;

    import java.util.ArrayList;

    import java.util.List;

    import java.util.Scanner;

    public class LetUsPlay {

    Scanner console = new Scanner(System.in);

    //定义一个玩家List

    public List players;

    public LetUsPlay() {

    //初始化玩家List

    players = new ArrayList();

    }

    /**

    * 创建玩家方法

    * */

    public void CreatePlayers(){

    System.out.println("-----------登记玩家信息-----------");

    System.out.println("一共有几位玩家呢?");

    int playerCounter = console.nextInt();

    for(int i=0;i

    //确定一共有几个玩家

    System.out.println("请输入第"+(i+1)+"位玩家ID: ");

    int playerId = console.nextInt();

    System.out.println("请输入第"+(i+1)+"位玩家姓名: ");

    String playerName = console.next();

    Players player = new Players(playerId,playerName);

    players.add(player);

    }

    for (Players players : players) {

    System.out.println(players.name);

    }

    }

    /**

    * 为玩家发牌,之前扑克牌已经打乱顺序了

    * */

    public void GiveCards(){

    Players player = new Players();

    ShuffleAllCards giveCards = new ShuffleAllCards();

    System.out.println(giveCards.cards.size());  //-----------这里输出的list的size是0???应该是52呀??

    }

    }

    提问者:CarlGK

    2018-08-20 09:46

    展开全文
  • --------首先是扑克类的list集合, ----------------------------------------------------------package cardGame;import java.util.ArrayList;import java.util.Collections;import java.util.List;public class ...

    --------首先是扑克牌类的list集合, ----------------------------------------------------------

    package cardGame;

    import java.util.ArrayList;

    import java.util.Collections;

    import java.util.List;

    public class ShuffleAllCards {

    public List cards;

    public ShuffleAllCards(){

    this.cards = new ArrayList();

    }

    /**

    * 生成所有52张牌

    * */

    public void CardsCreate(){

    System.out.println("-----------游戏开始!-----------");

    //通过遍历得到所有52张牌.

    String[] number = {"A","2","3","4","5","6","7","8","9","10","J","Q","K"};

    String[] color = {"黑桃","红桃","梅花","方块"};

    for(int i=0;i

    for (int j = 0; j < color.length; j++) {

    //第一个是 黑桃A, 然后 红桃A,

    String OneCard = color[j]+number[i];

    //每一次都加到List里,list是有序的.

    cards.add(OneCard);

    }

    }

    if(cards.size() == 52){

    System.out.println("-----------生成扑克牌成功-------");

    }

    }

    /**

    * 打乱所有52张牌的顺序

    * */

    public void ShuffleCards(){

    System.out.println("-----------开始洗牌-----------");

    Collections.shuffle(cards);

    System.out.println(cards.size());  //-----------------------这里输出的是52,是对的--------------------

    System.out.println("-----------洗牌结束-----------");

    }

    }

    ---然后在游戏类里的发牌方法里调用上面的list集合,给玩家的手牌, 想先看看list的大小, 居然是0,但是在扑克牌类里是52呀...-------------

    package cardGame;

    import java.util.ArrayList;

    import java.util.List;

    import java.util.Scanner;

    public class LetUsPlay {

    Scanner console = new Scanner(System.in);

    //定义一个玩家List

    public List players;

    public LetUsPlay() {

    //初始化玩家List

    players = new ArrayList();

    }

    /**

    * 创建玩家方法

    * */

    public void CreatePlayers(){

    System.out.println("-----------登记玩家信息-----------");

    System.out.println("一共有几位玩家呢?");

    int playerCounter = console.nextInt();

    for(int i=0;i

    //确定一共有几个玩家

    System.out.println("请输入第"+(i+1)+"位玩家ID: ");

    int playerId = console.nextInt();

    System.out.println("请输入第"+(i+1)+"位玩家姓名: ");

    String playerName = console.next();

    Players player = new Players(playerId,playerName);

    players.add(player);

    }

    for (Players players : players) {

    System.out.println(players.name);

    }

    }

    /**

    * 为玩家发牌,之前扑克牌已经打乱顺序了

    * */

    public void GiveCards(){

    Players player = new Players();

    ShuffleAllCards giveCards = new ShuffleAllCards();

    System.out.println(giveCards.cards.size());  //-----------这里输出的list的size是0???应该是52呀??

    }

    }

    展开全文
  • 主要介绍了Java实现洗牌发牌方法,涉及java针对数组的遍历与排序操作相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
  • 本文实例讲述了Java实现洗牌发牌方法。分享给大家供大家参考。具体如下:import java.util.*;public class Main {/*** @param args the command line arguments*/static int numbersOfPlayers = 4;static int ...

    本文实例讲述了Java实现洗牌发牌的方法。分享给大家供大家参考。具体如下:

    import java.util.*;

    public class Main {

    /**

    * @param args the command line arguments

    */

    static int numbersOfPlayers = 4;

    static int numbersOfHandCard = 13;

    public static void main(String[] args) {

    // TODO code application logic here

    String[] player = {"小王","小张","小赵","小白"};

    String sentence = "的手牌是:";

    String[] huase = {"♥","♣","♦","♠"};

    String[] paiValue ={"A","2","3","4","5","6","7","8","9","10","J","Q","K"};

    List deak = new ArrayList();

    for(int i = 0;i < 4;i++){

    for(int j = 0; j < 13;j++)

    {

    deak.add(huase[i]+paiValue[j]);

    }

    }

    Collections.shuffle(deak);

    for(int i = 0;i < numbersOfPlayers;i++){

    System.out.print(player[i]+sentence);

    System.out.println(dealHand(deak, numbersOfHandCard));

    }

    }

    public static List dealHand(List Ls,int n){

    int sizePai = Ls.size();

    List handView = Ls.subList(sizePai - n, sizePai);

    List hand = new ArrayList(handView);

    handView.clear();

    return hand;

    }

    }

    展开全文
  • Java实现洗牌发牌方法本文实例讲述了Java实现洗牌发牌方法。分享给大家供大家参考。具体如下:import java.util.*;public class Main {/*** @param args the command line arguments*/static int ...

    Java实现洗牌发牌的方法

    本文实例讲述了Java实现洗牌发牌的方法。分享给大家供大家参考。具体如下:

    import java.util.*;

    public class Main {

    /**

    * @param args the command line arguments

    */

    static int numbersOfPlayers = 4;

    static int numbersOfHandCard = 13;

    public static void main(String[] args) {

    // TODO code application logic here

    String[] player = {"小王","小张","小赵","小白"};

    String sentence = "的手牌是:";

    String[] huase = {"♥","♣","♦","♠"};

    String[] paiValue ={"A","2","3","4","5","6","7","8","9","10","J","Q","K"};

    List deak = new ArrayList();

    for(int i = 0;i < 4;i++){

    for(int j = 0; j < 13;j++)

    {

    deak.add(huase[i]+paiValue[j]);

    }

    }

    Collections.shuffle(deak);

    for(int i = 0;i < numbersOfPlayers;i++){

    System.out.print(player[i]+sentence);

    System.out.println(dealHand(deak, numbersOfHandCard));

    }

    }

    public static List dealHand(List Ls,int n){

    int sizePai = Ls.size();

    List handView = Ls.subList(sizePai - n, sizePai);

    List hand = new ArrayList(handView);

    handView.clear();

    return hand;

    }

    }

    希望本文所述对大家的java程序设计有所帮助。相关阅读:

    javascript随机之洗牌算法深入分析

    C#连接Oracle数据库的方法

    Windows 10手机伴侣应用怎么样? 手机连电脑必备

    PHP中$_FILES的使用方法及注意事项说明

    修改Android应用的样式的一些关键点解析

    ThinkPHP控制器里javascript代码不能执行的解决方法

    javascript编写贪吃蛇游戏

    Asp.Net MVC3.0如何项目部署到Win7 64位系统

    PHP微信开发用Cache 解决数据缓存

    如何去除表单的回车即提交即回车!=提交

    C++实现图的邻接表存储和广度优先遍历实例分析

    PHP扩展Memcache分布式部署方案

    win10控制面板在哪?三种打开控制面板的方式介绍

    JavaScript中实现最高效的数组乱序方法

    展开全文
  • 本文实例讲述了java实现洗牌发牌方法。分享给大家供大家参考。具体如下:import java.util.*;public class main {/*** @param args the command line arguments*/static int numbersofplayers = 4;static int ...
  • import java.util.*;public class Main {/*** @param args the command line arguments*/static int numbersOfPlayers = 4;static int numbersOfHandCard = 13;public static void main(String[] args) {// TODO cod...
  • 发牌方法记录

    2015-12-22 23:41:19
    //Fight against landlords package palycard.falandord;... // 类 private final String Card[] = { "红桃3", "黑桃3", "梅花3", "方块3", "红桃4", "黑桃4", "梅花4", "方块4", "红桃5", "黑桃
  • 4个人玩牌,最后保留3张底:     public static void main(String[] args) { List&lt;Integer&gt; cards =new ArrayList&lt;Integer&gt;(); //shuffle 洗 模拟斗地主 for(int i=...
  • 第一种方法:以java双列集合HashMap为核心实现发牌 代码如下: public static void main(String[] args) { //准备牌堆创建map集合,存放牌 Map<Integer,String> pai=new HashMap<>();
  • Java练习——扑克牌发牌器声明:学习自其他博主,感谢分享,这里自己也写了一下。实现思路- 构建一张扑克牌- 构建一套扑克牌- 测试构建一张扑克牌/***@author冬冬* 定义一个单张扑克牌类* 有花型,大小*/public ...
  • 在上一篇文章的最后,我们留了一个小作业:花果山美男子:tkinter模拟扑克牌和狼人杀发牌​zhuanlan.zhihu.com小作业2:模拟斗地主发牌,上方是牌库,实现从牌库到三个方向的动态发牌,最后揭示三张底牌(提示:可以...
  • Java练习——扑克牌发牌器声明:学习自其他博主,感谢分享,这里自己也写了一下。实现思路- 构建一张扑克牌- 构建一套扑克牌- 测试构建一张扑克牌/***@author冬冬* 定义一个单张扑克牌类* 有花型,大小*/public ...
  • Java练习——扑克牌发牌器,供大家参考,具体内容如下声明:学习自其他博主,感谢分享实现思路构建一张扑克牌构建一套扑克牌测试构建一张扑克牌/*** @author 冬冬* 定义一个单张扑克牌类* 有花型,大小*/public ...
  • 案例: 模拟斗地主发牌 需求:使用一个集合对象存储一副扑克牌。将所有扑克牌的顺序打乱,然后分发给用集合表示的三个玩家和底牌,并打印玩家和底牌的集合内容 步骤:1.买一副扑克牌 ​ 将花色和数字分别进行组合,...
  • 四人发牌洗牌程序

    2018-04-08 22:26:21
    编写一个模拟人工洗牌的程序,将洗好的牌分别...*4)可以设计成图形用户界面,通过按钮进行洗牌、发牌的动作,并按上面的要求显示东西南北四个人手上的牌型。 此代码按照要求做好,并有注释,方便根据个人需要修改。
  • 主要分为以下四个步骤: ...4.主函数中用三个LinkedList集合来存放三个玩家的手牌,并调用洗牌发牌方法 Card类 public class Card { private String number;//号码 private String flower...
  • 案例∶模拟斗地主发牌需求:使用一个集合对象存储一副扑克牌,将所有扑克牌的顺序打乱,然后分发给用集合表示的三个玩家和底牌,并打印玩家和底牌的集合内容。步骤:1.买一副扑克牌将花色和数字分别进行组合,生成所有...
  • 洗牌和发牌是棋牌类游戏中,非常重要的两个关键节点,而这两个关键节点涉及的算法,很多同学非常感兴趣,今天,我们就以NodeJS环境为例,通过JS代码给大家解说洗牌和发牌算法。一、 洗牌算法1. 采用随机交换策略...
  • Java中 Collections.shuffle()顾名思义,shuffle是洗的意思,所以这个方法的作用是将list中的循序打乱,参数放入List函数源代码一个简单的例子:@Testprivate void test1(){ArrayList num=new ArrayList();...
  • 有一个card牌类和player玩家类,还有一个发牌类用于实现发牌方法。为了模拟每个玩家的牌都是随机的,我是这样想的:1)初始化方法:用于将54张牌存到一个数组里,每张牌都一个唯一的序号。2) 利用随机数,将每个...
  • 模仿发牌洗牌

    2018-03-21 21:36:00
    分为以下几个步骤:1).写一个卡片类Card类, 含两个...写一个发牌者 Dealer 类,有属性 扑克牌Poker类,并提供方法: 发牌 deal() , 洗牌 shuffle()4).写一个 玩家 Player 类 5).在单元测试中,可以初始化3个玩家,并...
  • '''斗地主1.牌堆,54张牌,四种花色,2,3,4,5...发牌'''import randomclass Poke():flowr=["黑桃","方片","梅花","红桃"]num=["2","3","4","5","6","7","8","9","10","J","Q","K","A"]kings={'big':'大王','small':'...
  • 随机发牌

    2020-07-19 19:24:30
    随机发牌 运用的类和方法 运用的List集合 Random 随机生成 思维过程 先创造一个Card类将牌id 片面值 点数用getset方法生成 第二个创一个花色的类同上 第三个创一个玩家类玩家id 昵称 判断是够否是地主 和手中所有牌...
  • java实现斗地主洗牌发牌看牌 感想: 第一次写博客,感觉编辑器挺复杂厉害的,感觉自己的内容挺简单的。。 有什么问题请多多指教! 思路: 创建一个扑克牌的实体类Poker,设置了四个参数:花色、数字、牌值(判断...
  • Java扑克牌发牌程序

    2019-08-15 13:22:01
    Java扑克牌发牌代码(自定义牌的幅数和人数) 每个人按花色,从大到小排序输出手牌 (重写了Comparable接口的compareTo方法) Poker类 定义num和huase,然后就是构造方法,重写compareTo方法. 注意:String调用...
  • 用JAVA实现简单的扑克牌洗牌发牌并排序,首先写代码之前需要明确需要分哪些步骤: 创建一个HashMap集合对象 创建一个ArrayList集合对象 生成一副扑克牌 将扑克牌按照键值关系添加到HashMap集合中 开始洗牌(洗键) ...
  • 模拟斗地主发牌

    2021-03-18 21:54:23
    模拟斗地主发牌 具体步骤 买牌 洗牌 发牌 看牌 注意点 通过循环嵌套造牌 大王为最后一张牌,所以num不需要自增 利用Collections.shuffle()方法洗牌,洗的是牌的编号 先把底牌发出,其他人的牌通过%3的余数发给...
  • keys.isEmpty()) { //玩家 if (!keys.isEmpty()) { player0.add(keys.remove(0)); //remove返回值可以被得到 } if (!keys.isEmpty()) { player1.add(keys.remove(0)); } if (!keys....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 786
精华内容 314
热门标签
关键字:

发牌方法