私はプログラミングRuby - 実用的なプログラマーガイドを読んでいて、このコードに出くわしました:
class SongList
def [](key)
if key.kind_of?(Integer)
return @songs[key]
else
for i in 0...@songs.length
return @songs[i] if key == @songs[i].name
end
end
return nil
end
end
[ ] メソッドの定義方法がわかりません。
キーが [ ] の外側にあるのに、メソッドが呼び出されると [ ] の内側にあるのはなぜですか?
キーを括弧なしにすることはできますか?
これを書くにはもっと良い方法があり、機能する独自の方法を書く方法を知っていますが、この [ ] メソッドは私を困惑させるだけです...どんな助けも大歓迎です、ありがとう