我有一个自定义的
其次,我有一个玩家字典,每个玩家都有一组卡牌。
为有效地处理我已经洗好的牌堆,计划循环两次遍历玩家字典,每次发一张牌,就像现场发牌一样。
将Card类型简单附加到Card收集中是否可能?我的尝试似乎没有成功。其中,d是一个洗过的Deck(Collection)包含Card类型。
上述内容是否正确?
struct
,用于创建、洗牌和发牌扑克牌。struct Card {
let pip : Pip
let suit : Suit
var isFaceCard : Bool {
return pip.rawValue > 10
}
var color : CardColor {
return suit.color
}
}
其次,我有一个玩家字典,每个玩家都有一组卡牌。
var Players = ["Scott": [Card](), "Bob": [Card](), "John": [Card]()]
为有效地处理我已经洗好的牌堆,计划循环两次遍历玩家字典,每次发一张牌,就像现场发牌一样。
将Card类型简单附加到Card收集中是否可能?我的尝试似乎没有成功。其中,d是一个洗过的Deck(Collection)包含Card类型。
Players["Scott"].append(d.deal())
编辑1
对于每个玩家使用结构体,我已经添加了这个功能。
struct Player {
let name : String
var cards : [Card]
}
var Players = [Player]()
Players.append(Player(name:"Scott"))
我是否需要在初始化时就给玩家他们的“牌”,还是可以稍后发放?因为上面的代码会产生错误。
Players.append(Player(name:"Scott", cards: [Card]()))
上述内容是否正确?