のような配列を返すクラスのメソッドがいくつかあります["1", "3", "2", "6", "2"]
。これらが数値ではなく文字列配列であっても問題ありません。配列を取得して、このような単一の文字列に変換する別のメソッドがあります1 3 2 6 2
。
class Turn
def initialize
@rolls = 1
@dice = []
end
def roll
@roll = []
x = 5 - @dice.length
x.times do |i|
@roll[i] = rand(6) + 1
end
@roll # ["1", "3", "2", "6", "2"]
end
def show
@dice # ["1", "3", "6"]
end
def line(something)
temp = ""
something.each do |x|
temp << x + " "
end
puts temp # "1 3 6 " or "1 3 2 6 2 "
end
end
次に、メソッドをチェーン化できるようにしたいので、
first = Turn.new
first.roll.line
first.show.line
しかし、私はこれを行う方法を本当に知りません、そして私はどのようにオンラインで見つけることができませんでした。私は戻ってくるのを見self
たことがありますが、それが何をするのか本当に理解できません。メソッド内のコードは、line
別のメソッドに移動すると機能するため、問題は実際にはチェーンとリターンを処理することだけです。
誰かがコードを手伝うだけでなく、戻り値に関してチェーンがどのように機能するか、そして自己を返すことがどのように機能するかを手伝うことができれば、それは素晴らしいことです。
ありがとうございました!