首先生成一副扑克牌(这里不包含大小王,自己练习的时候可以加上),然后根据用户输入的玩家人数和发给每名玩家的牌数进行发牌。

提示:可以使用shuffle()实现“洗牌”操作。

package test;import java.util.*;import static java.util.Collection.*;public class test3 {public static void main(String[] args) {System.out.println("请输入玩家人数:");int numHands = new Scanner(System.in).nextInt();System.out.println("请输入每手牌的牌数:");int num_card = new Scanner(System.in).nextInt();List<String> huase = Arrays.asList("♠","♥","♣","♦");List<String> numb = Arrays.asList("A","2","3","4","5","6","7","8","9","10","J","Q","K");List<String> deck = new ArrayList<>();for(int i=0;i<huase.size();i++)for(int j=0;j<numb.size();j++)deck.add(numb.get(j)+" of "+huase.get(i));Collections.shuffle(deck);for(int i = 0;i<numHands;i++)System.out.println(dealHand(deck,num_card));}public static List dealHand(List<String>deck,int n){int deckSize = deck.size();List<String> handView = deck.subList(deckSize-n,deckSize);List<String> hand = new ArrayList<String>(handView);handView.clear();return hand;}
}

结果:

请输入玩家人数:
5
请输入每手牌的牌数:
5
[K of ♥, 9 of ♥, K of ♠, Q of ♦, 4 of ♦]
[Q of ♥, 4 of ♠, 2 of ♠, 9 of ♠, Q of ♠]
[8 of ♣, 3 of ♠, 3 of ♣, 6 of ♣, 3 of ♥]
[10 of ♣, 3 of ♦, 10 of ♠, 6 of ♠, 9 of ♣]
[Q of ♣, 10 of ♥, 7 of ♣, 6 of ♦, J of ♠]进程已结束,退出代码0

好了,一个简单的发牌程序就写成了。如果同学想提升自己的话可以升级一下,例如在控制台下进行出牌等操作,就像斗地主那种。

同学们,看完来个免费的点赞和关注吧!!谢谢了!!!

java编写扑克牌程序相关推荐

  1. java 输入 方程,用java 编写一程序,求解一元二次方程:aX2+bX+c=0.参数a、b及c从命令行做参数输入 java...

    题目: 用java 编写一程序,求解一元二次方程:aX2+bX+c=0.参数a.b及c从命令行做参数输入 java 答案参考: 以下程序在jdk5.0测试通过 import java.util.Sca ...

  2. java编写应用程序_为您的Java应用程序编写数据驱动的测试

    java编写应用程序 JUnit是一个功能非常强大的测试框架,它不仅为其用户提供了编写快速简便的测试的功能,而且还为用户提供了扩展它并使其按其期望的方式工作的机会. 在JUnit之上构建了许多框架,这 ...

  3. Java 编写程序打印以下图形_怎么用java编写如下程序在屏幕上输出如下图形 * *** *** * 循环语句做(if语句)...

    怎么用java编写如下程序在屏幕上输出如下图形 * *** ***** ******* ***** ... 4个答案  提问时间: 2011-12-16  22个赞 回答:这个图形对吧? * *** ...

  4. java编写应用程序_使用Java API编写应用程序

    java编写应用程序 总览 介绍 DB2JSON可用于DB2 Linux,Unix和Windows 10.5以及用于z / OS V3.1的IBM DB2 Accessories Suite与DB2 ...

  5. 用java编写spark程序,简单示例及运行

     最近因为工作需要,研究了下spark,因为scala还不熟,所以先学习了java的spark程序写法,下面是我的简单测试程序的代码,大部分函数的用法已在注释里面注明. 我的环境:hadoop 2 ...

  6. JAVA:编写一个程序,模拟电梯得功能。功能接口包括电梯上行按钮、下行按钮、楼层选择与电梯在行驶过程中得楼层显示。

    编写一个程序,模拟电梯得功能.功能接口包括电梯上行按钮.下行按钮.楼层选择与电梯在行驶过程中得楼层显示. (1) 由用户选择按上行按钮还就是下行按钮,选择操作后再由用户输入要进入得楼层,进而电梯开始运 ...

  7. java 编写 servlet 程序_Java技术分享:如何编写servlet程序

    身为计算机专业的我,从接触java至今,已经有七年之久,从最开始的小白到现在的大白,这是一个漫长而曲折的历程. 大学刚接触Java这个学科时,一点儿都不理解java是要干嘛的,只知道学起来肯定不容易, ...

  8. 用java编写验证码程序_编写,验证和分析实时Java应用程序

    本文是" 用实时Java开发"系列的第三篇也是最后一部分,展示了如何设计,编写,验证和分析基本的实时应用程序. 我们将说明: 应用程序的时间和性能要求. 为什么传统的非实时Java ...

  9. Java编程字符逆序输出_用JAVA编写一程序:从键盘输入多个字符串到程序中,并将它们按逆序输出在屏幕上。...

    展开全部 代码如下: import java.util.Scanner; public class ScannerDemo{ public static void main(String[] args ...

最新文章

  1. 如何写出一个好的单例模式
  2. 树莓派 -- 按键 (key)使用BCM2835 gpio library
  3. 要管理组策略 您必须以域用户账户登录此计算机,组策略设置:使普通用户登陆域控制器的电脑...
  4. oracle主备库查询,oracle11g dataguard 备库数据同步的检查方法
  5. Hybris DDIC type and its counterpart model class
  6. HDU-Yuna's confusion 树状数组 Or Multiset
  7. Windows更新右下角出现 天气温度等提示,如何取消
  8. 漫步数理统计十八——相关系数
  9. Java BIO多人聊天室
  10. 机器学习笔记(十)---- KNN(K Nearst Neighbor)
  11. macOS设备上的照片导入Bridge
  12. python显示多个图表
  13. Nsight中给工程添加include目录
  14. 下载特定区域内街景照片数据 | Download Street View Photos within Selected Region
  15. HTML多选框,全选,多选
  16. Spring学习(五):动态代理的两种实现方式(全网最容易懂)
  17. Python破解WIFI密码详细介绍
  18. exploit completed, but no session was created
  19. 5.1劳动节|致敬每一位数字安全劳动者
  20. BP算法误差逆传播参数更新公式推导

热门文章

  1. 个人主页增添超级玛丽小游戏与留言板功能
  2. 医院管理信息系统 HIS EMR PACS LIS
  3. 手机中Ram和Rom详解
  4. 和中国移动对接短信平台
  5. 简转繁的JS代码(转)
  6. matlab 正负数,matlab判断函数值正负程序
  7. 解决jmeter控制台报javax.swing.text.BadLocationException: Position not represented by view的方法
  8. python获取excel数据制作有文字和图表的报告_如何用Python绘制学术报告图表?
  9. L - Ray in the tube Gym - 101911L (暴力)
  10. python分析红楼梦中人物形象_《红楼梦》中女性人物形象分析