免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
模拟人工洗牌模拟人工洗牌 编写一个模拟人工洗牌的程序 将洗好的牌分别发给四个人 使用结构 card 来描述一张牌 用随机方法来模拟人工洗牌的过程 最后将洗好的 52 张牌顺序分别发给四个人 设计要求 1 要求使用 java 类包中的 Math Random 方法进行随机处理 2 要求在 dos 控制台窗口中显示每个人手上的扑克牌 3 要求将每个人手上的 13 张牌按照四种花色 从小到大排列整齐后显示出来 4 可以设计成图形用户界面 通过按钮进行洗牌 发牌的动作 并按上面的要求显示东西南北四个人手上的牌型 作者 方贵深 吉林大学珠海学院 import java awt import javax swing import javax swing border BevelBorder import javax swing border SoftBevelBorder import java awt event public class Test extends JFrame implements ActionListener private JButton swrapCardButton new JButton 洗牌 private JButton dealButton new JButton 发牌 private JTextArea textArea new JTextArea private JTextArea textAreas new JTextArea 52 private JPanel panel1 new JPanel new GridLayout 1 12 6 10 private JPanel panel2 new JPanel new GridLayout 1 12 6 10 private JPanel panel3 new JPanel new GridLayout 1 12 6 10 private JPanel panel4 new JPanel new GridLayout 1 12 6 10 private JPanel panel5 new JPanel new GridBagLayout private JLabel south new JLabel 南 private JLabel north new JLabel 北 private JLabel east new JLabel 东 private JLabel west new JLabel 西 Container container null Poker poker null public Test super 洗牌程序 container this getContentPane container setLayout null this setResizable false container add panel1 container add panel2 container add panel3 container add panel4 container add panel5 container add south container add west container add east container add north for int i 0 i 52 i textAreas i new JTextArea textAreas i setBorder new SoftBevelBorder BevelBorder RAISED if i 13 panel1 add textAreas i else if i 26 panel2 add textAreas i else if i 39 panel3 add textAreas i else panel4 add textAreas i GridBagConstraints gbc new GridBagConstraints gbc anchor GridBagConstraints CENTER gbc fill GridBagConstraints NONE container add textArea gbc gbc gridwidth 1 gbc weightx 50 gbc weighty 10 gbc fill GridBagConstraints NONE panel5 add swrapCardButton gbc panel5 add dealButton gbc east setBounds 5 20 20 15 panel1 setBounds 5 45 830 85 south setBounds 5 150 20 15 panel2 setBounds 5 175 830 85 west setBounds 5 300 20 15 panel3 setBounds 5 325 830 85 north setBounds 5 445 20 15 panel4 setBounds 5 465 830 85 panel5 setBounds 5 575 800 50 textArea setBorder BorderFactory createRaisedSoftBevelBorder Font font new Font 宋体 Font BOLD 20 dealButton setFont font swrapCardButton setFont font dealButton addActionListener this swrapCardButton addActionListener this public static void main String args Test test new Test test setSize 850 700 test setVisible true test setDefaultCloseOperation JFrame EXIT ON CLOSE TODO Auto generated method stub public void actionPerformed ActionEvent e JButton button JButton e getSource if button swrapCardButton 点击了洗牌按钮 poker new Poker for int i 0 i 52 i int j int 52 Math random Object tStrings poker card i poker card i poker card j poker card j tStrings else 点击了发牌按钮 sort for int i 0 i 52 i textAreas i setText if poker card i 0 equals poker card i 0 equals textAreas i setForeground Color red else textAreas i setForeground Color black if poker card i 1 toString indexOf 10 1 牌号不是10 textAreas i setText poker card i 1 poker card i 0 n n n n poker card i 1 poker card i 0 else textAreas i setText poker card i 1 poker card i 0 n n n n poker card i 1 poker card i 0 private void sort for int i 0 i 4 i for int j i 13 j i 1 13 1 j int t j for int k j 1 k i 1 13 k 花色顺序 Integer p2 Integer poker card t 2 Integer q2 Integer poker card k 2 大小顺序 Integer p3 Integer poker card t 3 Integer q3 Integer poker card k 3 if pareTo q3 1 t k else if pareTo q3 0 if t j Object tObject poker card t poker card t poker card j poker card j tObject private class Poker private Object card A new Integer 1 new Integer 1 2 new Integer 1 new Integer 2 3 new Integer 1 new Integer 3 4 new Integer 1 new Integer 4 5 new Integer 1 new Integer 5 6 new Integer 1 new Integer 6 7 new Integer 1 new Integer 7 8 new Integer 1 new Integer 8 9 new Integer 1 new Integer 9 10 new Integer 1 new Integer 10 J new Integer 1 new Integer 11 Q new Integer 1 new Integer 12 K new Integer 1 new Integer 13 A new Integer 2 new Integer 1 2 new Integer 2 new Integer 2 3 new Integer 2 new Integer 3 4 new Integer 2 new Integer 4 5 new Integer 2 new Integer 5 6 new Integer 2 new Integer 6 7 new Integer 2 new Integer 7 8 new Integer 2 new Integer 8 9 new Integer 2 new Integer 9 10 new Integer 2 new Integer 10 J new Integer 2 new Integer 11 Q new Integer 2 new Integer 12 K new Integer 2 new Integer 13 A new Integer 3 new Integer 1 2 new Integer 3 new Integer 2 3 new Integer 3 new Integer 3 4 new Integer 3 new Integer 4 5 new Integer 3 new Integer 5 6 new Integer 3 new Integer 6 7 new Integer 3 new Integer 7 8 new Integer 3 new Integer 8 9 new Integer 3 new Integer 9 10 new Integer 3 new Integer 10 J new Integer 3 new Integer 11 Q new Integer 3 new Integer 12 K new Integer 3 new Integer 13 A new Integer 4 new Integer 1 2 new Integer 4 new Integer 2 3 new Integer 4 new Integer 3 4 new Integer 4 new Integer 4 5 new Integer
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 初中八年级历史:改革开放以来中国社会生活的变迁(1978年至今)教案
- 多层仓库改造方案范本
- 2026年麻醉科术中麻醉操作规范考核模拟试题及答案解析
- 2026年水果店转让合同范本与水果采购协议
- 施工现场安全防护技术及管理实务
- 职业素养提升培训教材与课后测试
- 企业标识设计安装合同品牌形象协议2026
- 2026年版权授权合同范本及使用费用协议
- 电气设备工程施工组织设计
- 三升四英语衔接课程设计方案
- 2026年中医博士研究生入学考试综合试卷(含答案及解析)
- 2026高考作文终极预测10大母题超详细指导(写作指导+误区+热点素材+高分范文)
- 2026年安全生产月-人人讲安全、个个会应急-排查整治风险隐患
- 2026年高考作文备考预测之“新质生产力与科技自强”:主题素材+写作维度+试题分析
- 2026年江西有色智联科技有限公司招聘6人笔试参考试题及答案解析
- 2026厦门国有资本运营有限责任公司招聘笔试历年常考点试题专练附带答案详解
- 2026山东威海热电集团有限公司招聘44人笔试参考题库及答案解析
- 雨课堂学堂在线学堂云《政治学基础(暨南)》单元测试考核答案
- 2026高考作文十大热考主题:长征精神(标题、金句、人物、分论点、范文)
- 2026西北政法大学专职辅导员招聘7人备考题库及答案详解(有一套)
- 2026年陕西好猫卷烟材料有限责任公司招聘(10人)笔试模拟试题及答案解析
评论
0/150
提交评论