Android_開發(fā)_Day10_撲克游戲

Android_開發(fā)day10撲克游戲

目的:

通過寫一些小游戲來增加學習中的樂趣大猛,同時也是對前面學習的一些知識的一些整合瞳收。

技術:

<1> 單例設計模式:所謂的單例設計模式就是創(chuàng)造一個對象實例就可以在不同的地方去訪問它堕澄,做到一改全改的效果方便程序的形成膜蛔。單例設計模式首先不允許用戶創(chuàng)建某個類的實例瀑志,可以將構造函數(shù)私有化涩搓,第二步在自己的類里面提供創(chuàng)建這個對象的方法。我們可以在類中用public static 類名(返回類型) 方法名{return 事先在類里面創(chuàng)建好的該類的一個靜態(tài)對象(對象名一般用default sharedInstance manage)劈猪;}昧甘,這種創(chuàng)建單例式對象的方法叫做餓漢式。第二種創(chuàng)建單例對象的方法叫做懶漢式战得,即在外部需要它的時候才創(chuàng)建它充边,因此只要在類里提供創(chuàng)建它的方法即可。

<2> 數(shù)組的引用:ArrayList<泛型>是一個動態(tài)可變數(shù)組常侦,也是一個管理數(shù)組的類浇冰,它的里面裝的是引用變量,可根據(jù)引用變量的多少來動態(tài)開辟內(nèi)存聋亡,其實就是我們c語言階段學的鏈表湖饱,而Java中有一個雙鏈表的LinkedList<>。常用的方法有add(東西)杀捻;get(0~數(shù)組長度)井厌;size();返回值就是數(shù)組的長度。

技術如何使用:

有了前面的幾個類的基礎后我們就可以將其整合致讥,因此我們可以將游戲中心寫成如下代碼:

public class GameCenter {
    public static void main(String[] args){
        int choice = 0;
        do {
            int num, basicBet;
            Utils.showWelcome();
            System.out.print("請輸入玩家個數(shù):");
            num = Utils.scanf();
            System.out.print("請規(guī)定本局底注:");
            basicBet = Utils.scanf();
            Person[] players = new Person[num];
            PlayerManager.initPlayers(players);//生成玩家
            while (true) {
                System.out.println("請確認玩家信息:");
                PlayerManager.showPlayers(players);//顯示玩家
                System.out.println("Loading……");
                PlayerManager.distributePoker(players);
                //manager.showPokers();//測試
                System.out.print("( ");
                PlayerManager.showPlayerPoker(players);//看一下玩家的牌
                System.out.println("看不見我 )");
                PlayerManager.gameStart(players, basicBet);//第一輪游戲開始
                System.out.println("游戲結束仅仆,請選擇:");
                Utils.showMenu(1);
                System.out.print("請選擇:");
                choice = Utils.scanf();
                if (choice == 2 || choice == 4) {
                    break;
                } else if (choice == 3) {
                    System.out.print("請輸入底注:");
                    basicBet = Utils.scanf();
                    System.out.print("Success!");
                }
            }

        }while (choice != 4);
    }
}

相對對于昨日添加了一個Utils類,目的是更好的輸出到控制臺垢袱,和從控制臺輸入墓拜。

import java.util.Scanner;

public class Utils {
    public static void showWelcome(){
        showStar();
        System.out.println("歡迎來到御坂斗地主");
        showStar();
    }
    public static void showStar(){
        System.out.println("*******************");
    }
    public static void showMenu(boolean i){
        if (!i) {
            System.out.println("1.看牌");
            System.out.println("2.下注");
            System.out.println("4.棄牌");
        }
        else {
            System.out.println("1.看牌");
            System.out.println("3.跟注");
            System.out.println("4.棄牌");
        }
    }
    public static int scanf(){
        int num;
        Scanner scanner = new Scanner(System.in);
        num = scanner.nextInt();
        return num;
    }
    public static void showMenu(int i){
        System.out.println("1.再來一局");
        System.out.println("2.從頭開始");
        System.out.println("3.修改底注");
        System.out.println("4.退出游戲");
    }
}

實際使用效果:

{E4023612-CA3B-459C-87FB-C35DD9EA1095}.png.jpg
{7C7547CF-D671-4A7D-B185-252D8A0E8B32}.png.jpg
{C29894F8-55B4-4F12-A95C-2DF48E092C4F}.png.jpg

總結:

這個Demo如果能完整寫完的話就能夠體會到了面對對象的編程思想與面向過程的編程思想的差別。

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末请契,一起剝皮案震驚了整個濱河市咳榜,隨后出現(xiàn)的幾起案子夏醉,更是在濱河造成了極大的恐慌,老刑警劉巖涌韩,帶你破解...
    沈念sama閱讀 222,865評論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件畔柔,死亡現(xiàn)場離奇詭異,居然都是意外死亡臣樱,警方通過查閱死者的電腦和手機靶擦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,296評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來雇毫,“玉大人玄捕,你說我怎么就攤上這事∨锓牛” “怎么了枚粘?”我有些...
    開封第一講書人閱讀 169,631評論 0 364
  • 文/不壞的土叔 我叫張陵,是天一觀的道長飘蚯。 經(jīng)常有香客問我赌结,道長,這世上最難降的妖魔是什么孝冒? 我笑而不...
    開封第一講書人閱讀 60,199評論 1 300
  • 正文 為了忘掉前任柬姚,我火速辦了婚禮,結果婚禮上庄涡,老公的妹妹穿的比我還像新娘量承。我一直安慰自己,他們只是感情好穴店,可當我...
    茶點故事閱讀 69,196評論 6 398
  • 文/花漫 我一把揭開白布撕捍。 她就那樣靜靜地躺著,像睡著了一般泣洞。 火紅的嫁衣襯著肌膚如雪忧风。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,793評論 1 314
  • 那天球凰,我揣著相機與錄音狮腿,去河邊找鬼。 笑死呕诉,一個胖子當著我的面吹牛缘厢,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播甩挫,決...
    沈念sama閱讀 41,221評論 3 423
  • 文/蒼蘭香墨 我猛地睜開眼贴硫,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了伊者?” 一聲冷哼從身側響起英遭,我...
    開封第一講書人閱讀 40,174評論 0 277
  • 序言:老撾萬榮一對情侶失蹤间护,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后挖诸,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體汁尺,經(jīng)...
    沈念sama閱讀 46,699評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,770評論 3 343
  • 正文 我和宋清朗相戀三年税灌,在試婚紗的時候發(fā)現(xiàn)自己被綠了均函。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片亿虽。...
    茶點故事閱讀 40,918評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡菱涤,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出洛勉,到底是詐尸還是另有隱情粘秆,我是刑警寧澤,帶...
    沈念sama閱讀 36,573評論 5 351
  • 正文 年R本政府宣布收毫,位于F島的核電站攻走,受9級特大地震影響,放射性物質發(fā)生泄漏此再。R本人自食惡果不足惜昔搂,卻給世界環(huán)境...
    茶點故事閱讀 42,255評論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望输拇。 院中可真熱鬧摘符,春花似錦、人聲如沸策吠。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,749評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽猴抹。三九已至带族,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蟀给,已是汗流浹背蝙砌。 一陣腳步聲響...
    開封第一講書人閱讀 33,862評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留跋理,地道東北人拍霜。 一個月前我還...
    沈念sama閱讀 49,364評論 3 379
  • 正文 我出身青樓,卻偏偏與公主長得像薪介,于是被迫代替她去往敵國和親祠饺。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,926評論 2 361

推薦閱讀更多精彩內(nèi)容