继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

我是这样开发简易扑克牌游戏

xyyyy318
关注TA
已关注
手记 5
粉丝 13
获赞 215

扑克牌创建好麻烦,为了方便我只创建了几张牌,欢迎大家指正。
package com.xy.game;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;

public class pokerList {

public static void main(String[] args) {
    /*
     * 创建一副扑克牌
     */
    List<Poker> pokerAll = new ArrayList<Poker>();
    Poker[] pk = { new Poker("方片", "2"), new Poker("方片", "3"),
            new Poker("方片", "4"), new Poker("方片", "5"),
            new Poker("方片", "6"), new Poker("方片", "7"),
            new Poker("方片", "8"), new Poker("方片", "9"),
            new Poker("方片", "10"), new Poker("方片", "J"),
            new Poker("方片", "Q"), new Poker("方片", "K"),
            new Poker("方片", "A"), new Poker("梅花", "2"),
            new Poker("梅花", "3"), new Poker("梅花", "4"),
            new Poker("梅花", "5"), new Poker("梅花", "6"),
            new Poker("梅花", "7"), new Poker("梅花", "8"), };
    pokerAll.addAll(0, Arrays.asList(pk));
    System.out.println("------创建扑克牌-------");
    //洗牌
    System.out.println("------洗牌-------");
    Collections.shuffle(pokerAll);
    /*
     * 创建玩家
     */
    Scanner in = new Scanner(System.in);
    System.out.println("请输入第一个玩家的ID:");
    String p1Id = in.next();
    System.out.println("请输入第一个玩家的姓名:");
    String p1Name = in.next();
    Player p1 = new Player(p1Id, p1Name);
    System.out.println("请输入第二个玩家的ID:");
    String p2Id = in.next();
    System.out.println("请输入第二个玩家的姓名:");
    String p2Name = in.next();
    Player p2 = new Player(p2Id, p2Name);
    System.out.println("-------发牌---------");
    System.out.println("玩家" + p1Name + "拿牌");
    System.out.println("玩家" + p2Name + "拿牌");
    System.out.println("玩家" + p1Name + "拿牌");
    System.out.println("玩家" + p2Name + "拿牌");
    System.out.println("-----发牌结束,开始游戏-------");
    /*
     * 玩家拿牌
     */
    List<Poker> p1Pokers = new ArrayList<Poker>();
    p1Pokers.add(pokerAll.get(0));
    p1Pokers.add(pokerAll.get(2));
    Collections.sort(p1Pokers);
    List<Poker> p2Pokers = new ArrayList<Poker>();
    p2Pokers.add(pokerAll.get(1));
    p2Pokers.add(pokerAll.get(3));
    Collections.sort(p2Pokers);
    /*
     * 判断最大手牌
     */
    System.out.println("玩家:"+p1Name+"最大的手牌为"+p1Pokers.get(1).huase+p1Pokers.get(1).number);
    System.out.println("玩家:"+p2Name+"最大的手牌为"+p2Pokers.get(1).huase+p2Pokers.get(1).number);
    /*
     * 判断胜负
     */
    List<Poker> end = new ArrayList<Poker>();
    end.add(p1Pokers.get(1));
    end.add(p2Pokers.get(1));
    Collections.sort(end);
    if(end.get(1)==p1Pokers.get(1)){
        System.out.println("玩家"+p1Name+"win!");
    }else{
        System.out.println("玩家"+p2Name+"win!");
    }
    System.out.println("玩家"+p1Name+"的手牌为"+p1Pokers.get(0).huase+p1Pokers.get(0).number+p1Pokers.get(1).huase+p1Pokers.get(1).number);
    System.out.println("玩家"+p1Name+"的手牌为"+p2Pokers.get(0).huase+p2Pokers.get(0).number+p2Pokers.get(1).huase+p2Pokers.get(1).number);

}

}

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP

热门评论

玩家拿牌好像没有随机性耶,比如玩家1拿了[0]和[2]的牌,下一轮还是拿了同样的排了。。。

查看全部评论