私のコードがswitchステートメントを実行することはないようです。 Deckオブジェクトを作成するたびに、すべてのCardオブジェクトはスーツと名前の両方にnilを持ちます。誰か助けてくれますか?Rubyのケースステートメントのヘルプが必要
class Card
def initialize (suit, number, name)
@suit = suit
@number = number
@name = name #
end
attr_reader :suit, :number, :name
end
class Deck
def initialize
@deck = Array.new
for i in 0...4
suit = case i
when i == 0 then "Spades"
when i == 1 then "Hearts"
when i == 2 then "Diamonds"
when i == 3 then "Clubs"
end
puts i
puts suit #Debug only
for j in 2...15
name = case j
when j == 2 then "Two of #{suit}"
when j == 3 then "Three of #{suit}"
when j == 4 then "Four of #{suit}"
when j == 5 then "Five of #{suit}"
when j == 6 then "Six of #{suit}"
when j == 7 then "Seven of #{suit}"
when j == 8 then "Eight of #{suit}"
when j == 9 then "Nine of #{suit}"
when j == 10 then "Ten of #{suit}"
when j == 11 then "Jack of #{suit}"
when j == 12 then "Queen of #{suit}"
when j == 13 then "King of #{suit}"
when j == 14 then "Ace of #{suit}"
end
puts j
puts name #Debug only
@deck.push(Card.new(suit, j, name))
end
end
end
attr_reader :deck
end
以下の繰り返しが少ないです: 'suit =%w [Spades Hearts Diamonds Clubs] [i];名前=%w [二三四四五四七八十九十九クイーンキングエース] [j-2] + "#{suit}"の ' –