【发布时间】:2017-10-30 22:52:16
【问题描述】:
我建立了一副纸牌:
class Card
attr_accessor :rank, :suit
def initialize(rank, suit)
@rank = rank
@suit = suit
end
def output_card
puts "#{self.rank} of #{self.suit}"
end
end
class Deck
def initialize
@cards = []
@ranks = ["Ace", 2, 3, 4, 5, 6, 7, 8, 9, 10, "Jack", "Queen", "King"]
@suits = [:hearts, :spades, :diamonds, :clubs]
@suits.each do |suit|
@ranks.each do |rank|
@cards << Card.new(rank, suit)
end
end
end
def shuffle
@cards.shuffle!
end
def deal
@cards.shift
end
def output_deck
@cards.each do |card|
card.output_card
end
end
end
deck = Deck.new
deck.shuffle
deck.deal
deck.output_deck
puts "Show top card:"
deck.deal.output_card
我正在努力添加Dealer 类以将指定数量的牌发给指定数量的玩家。
如果有人能解释一下,我将不胜感激。
【问题讨论】:
-
这个问题似乎有点像家庭作业......尽管如此,如果您详细说明您无法理解的内容,它将有所帮助。要求解释 OOP 及其在这种情况下的适用性太宽泛了。缩小问题范围,我们可以尝试给你一个更有用的答案。如果您是 OOP 新手,并且不确定如何使用该术语来询问它,请使用您更熟悉的其他编程风格的术语。
-
再说一次,我对一般的编码很陌生,虽然这本身就是家庭作业,但它不是为了成绩或任何类似的事情。这只是我的导师额外分配的东西(做一个在线训练营),直到星期五我才有机会再次见到他,所以我希望在此期间有人能帮助我,这样我就可以进入实际课程.我和他们在一起的时间非常有限,所以我认为这是一个寻求帮助的好地方。对不起,如果我不这样做的话。