简单地用Java做一个21点的小游戏
主函数部分如下:
package com.ljl.ttd;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class test {
public static void main(String[] args) {
/**
* 21点游戏
* 分析
* 1、先要有一副牌
* 2、有人 玩家
* 3、游戏的业务逻辑
* 首先,没人发两张牌,随机出一个庄
* 然后,由庄开始,依次发牌,可选择要,或者是不要,一旦不要,则后续也不能要牌了
* 要牌以后,判断一下点数,如果点数大于22,则自动判定为输
* 当有三位玩家判定为输,或者是所有的玩家都不叫牌了,那么开始比较游戏的输赢
* 如果所有人的牌一样大,那么,庄赢
* 如果玩家的牌,大于庄,那么玩家赢
* 如果庄的牌最大,那么庄赢
*
* 点数:1-10 为自己相应点数 J/Q/K 算一点
*/
//定义一副牌
Card c=new Card();
c.shuffleCard();
//定义玩家
player p1=new player("xxx",c);
player p2=new player("yyy",c);
player p3=new player("aaa",c);
player p4=new player("bbb",c);
//将玩家存到集合中
List<player> list=new ArrayList<player>();
Collections.addAll(list, p1,p2,p3,p4);
Game g=new Game(list,c);
g.startGame();
}
}
定义Card类:
package com.ljl.ttd;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Card {
private List<String> flower; //花色
private List<String> point; //点数
private List<In