Java實現撲克牌洗牌和發牌_java

來源:腳本之家  責任編輯:小易  

1.定義牌類public class Card{public int id;牌大小public String number;牌值名稱public String color;花色}2.定義牌組,用ArrayList存放所有牌ArrayList<Card>cardGroup=new ArrayList();3.定義花色枚舉public static final String[]COLORS=new String[]{"方塊www.13333515.buzz防采集請勿采集本網。

本文實例為大家分享了Java實現撲克牌洗牌發牌的具體代碼,供大家參考,具體內容如下

哎。貌似是作業題吧!哈哈。樓上的哥們貌似是用c++做的吧,class都出來了!

實現原理:使用4種花色和13個數字組合成52張牌,放進一個集合中;通過把集合數據排序打亂實現洗牌操作,然后在通過循環把牌抽出來實現發牌操作。

C#入門經典里有這個程序

下面是實現代碼:

用隨機函數來好了,洗牌和發牌都已經完成,剩下就是如何玩牌了,你沒問,就不多說了。上面的偽代碼應該能看懂吧?如果有問題,就用消息聯系好了。你自己用編程語言去實現,不是什么大問題的。

import java.util.ArrayList;import java.util.Collections;public class Card { private static ArrayList<String> list = new ArrayList<>(); private static String[] colors = {"黑桃","紅桃","梅花","方塊"}; private static String[] nums = {"A","2","3","4","5","6","7","8","9","10","J","Q","K"}; private static String[] jokers = {"Joker","joker"}; //大小王 private static ArrayList<String> A = new ArrayList<>(); //小人A private static ArrayList<String> B = new ArrayList<>(); //小人B private static ArrayList<String> C = new ArrayList<>(); //小人C private static ArrayList<String> D = new ArrayList<>(); //小人D //初始化撲克牌 public static void initCards(boolean need){ for(String color:colors){ for (String num:nums) { list.add(color + num); } } //是否添加大小王 if (need) { list.add(jokers[0]); list.add(jokers[1]); } } //洗牌 public static void xiPai(){ Collections.shuffle(list); } //性感荷官,在線發牌 public static void faPai(){ A.clear(); B.clear(); C.clear(); D.clear(); for (int i = 0; i < list.size();i++) { if (i%4 == 0) { A.add(list.get(i)); } if (i%4 == 1) { B.add(list.get(i)); } if (i%4 == 2) { C.add(list.get(i)); } if (i%4 == 3) { D.add(list.get(i)); } } } //主方法 public static void main(String args[]){ initCards(true); xiPai(); faPai(); System.out.print("小人A" + A + "\n"); System.out.print("小人B" + B + "\n"); System.out.print("小人C" + C + "\n"); System.out.print("小人D" + D + "\n"); }}

洗牌:頂一個二維數組 byte cardcollect[4,14];依次復制為1-13(A-K) (0方塊,1梅花,2黑桃,3紅桃);隨機調換數組中的值,就達到了洗牌的效果 生活中我們洗牌不就是打亂牌的順序嘛!最后在隨機插入

下面是運行結果

使用集合類來模擬實現洗牌和發牌工作。解析:1、首先設定玩牌的人數,如4人;2、設定每人拿牌的數量;3、創建52張牌的數組;4、創建洗牌的方法\"card();5、在方法中創建ArrayList對象;6、循環把52張牌

import java.util.HashMap;import java.util.Map;import java.util.Random;Author:danagaojava 發牌程序,不含大王,小王可設定發牌人數public class Pai {HashMap,String>map=new HashMap,String>();private static final String[]colors={"紅桃內容來自www.13333515.buzz請勿采集。


  • 本文相關:
  • java實現撲克牌發牌器
  • java實現簡易撲克牌游戲
  • 使用java對一副撲克牌建模
  • java用撲克牌計算24點
  • java撲克牌速算24的方法
  • java基礎高級綜合練習題撲克牌的創建
  • java模擬撲克牌洗牌實現生成52張撲克的方法示例
  • java collection集合之撲克牌游戲實例
  • java實現撲克牌分發功能
  • 用java實現跳動的小球示例代碼
  • mybatis-4 mybatis與spring結合使用及原理解析
  • java使用otp動態口令(每分鐘變一次)進行登錄認證
  • java虛擬機創建失敗的原因整理
  • mapper接口注入兩種方式詳解
  • java刪除指定目錄下所有空文件夾的方法
  • 基于java socket實現 聊天小程序
  • java判斷是否為圖片的步驟和方法
  • java階乘計算獲得結果末尾0的個數代碼實現
  • 通過java代碼來創建view的方法
  • java編寫撲克牌游戲里,洗牌時發牌時用到了隨機分配的功能,請問在那個包中哪個類哪個方法?
  • java 中如何實現一副撲克牌洗牌的功能。如果無法書寫完整的代碼,可以用文字描述出自己的實現思路
  • 怎樣在Java控制臺中實現洗牌和發牌功能啊?
  • c語言編程用撲克牌洗牌和發牌
  • C語言中用結構體設計一個可以顯示花色和編號的撲克牌,并實現對這副撲克牌洗牌、整牌和發牌三個功能
  • 編寫一個洗牌和發牌的程序。。。跪求高手指點,謝謝了(寫出代碼程序)
  • 如何用一維數組模仿撲克洗牌和發牌
  • 用c#編寫的洗牌和發牌程序
  • 演示一副牌中所有的牌java編程題目
  • JAVA 撲克牌
  • 網站首頁網頁制作腳本下載服務器操作系統網站運營平面設計媒體動畫電腦基礎硬件教程網絡安全c#教程vbvb.netc 語言java編程delphijavaandroidiosswiftscala易語言匯編語言其它相關首頁java實現撲克牌發牌器java實現簡易撲克牌游戲使用java對一副撲克牌建模java用撲克牌計算24點java撲克牌速算24的方法java基礎高級綜合練習題撲克牌的創建java模擬撲克牌洗牌實現生成52張撲克的方法示例java collection集合之撲克牌游戲實例java實現撲克牌分發功能用java實現跳動的小球示例代碼mybatis-4 mybatis與spring結合使用及原理解析java使用otp動態口令(每分鐘變一次)進行登錄認證java虛擬機創建失敗的原因整理mapper接口注入兩種方式詳解java刪除指定目錄下所有空文件夾的方法基于java socket實現 聊天小程序java判斷是否為圖片的步驟和方法java階乘計算獲得結果末尾0的個數代碼實現通過java代碼來創建view的方法java使double保留兩位小數的多方java8 十大新特性詳解java.net.socketexception: connjava寫入文件的幾種方法分享java環境變量的設置方法(圖文教程java 十六進制與字符串的轉換java list用法示例詳解java中file類的使用方法javaweb實現文件上傳下載功能實例java 字符串截取的三種方法(推薦java設計模式之工廠方法模式了解java架構之微服務架構—雪崩效應java stream 流的使用過程解析java 模擬cookie登陸簡單操作示例java中注解機制及其原理的詳解java讀取properties文件連接數據庫的方法spring實戰之使用xml方式管理聲明式事務操mybatis執行動態sql的方法java對象與json對象之間互相轉換實現方法java linkedlist原理及實例詳解
    免責聲明 - 關于我們 - 聯系我們 - 廣告聯系 - 友情鏈接 - 幫助中心 - 頻道導航
    Copyright © 2017 www.13333515.buzz All Rights Reserved
    3排列五开奖结果