Arrayメソッドが便利らしい

Arrayメソッドが便利らしいRubyにはArrayメソッドというのがあるのですね知りませんでした。Arrayクラスと同名のArray。Kernelモジュールに含まれているということ。Kernelモジュールについてもそのうち学ばなければいけないけれど、結構基底に近いところにあるのですね。

pry(main)> Array.ancestors
=> [Array, Columnize, Enumerable, Object, PP::ObjectMixin, Kernel, BasicObject]

で、このArrayメソッドが便利らしいのです。とても賢く色々配列にしてくれる。

pry(main)> Array('Lion')
=> ["Lion"]
pry(main)> Array(nil)
=> []
pry(main)> Array(['Lion', 'Snake', 'Cicada'])
=> ["Lion", "Snake", "Cicada"]

メソッドの引数に配列、単数、nilなどが来てもArrayで配列にしてしまえば扱いやすくなるということ。ただ、Hashの扱いについては注意し無くてはならない。

pry(main)> Array({ animal: 'Lion', reptile: 'Snake', insect: 'Cicada'})
=> [[:animal, "Lion"], [:reptile, "Snake"], [:insect, "Cicada"]]

参考

Effective Ruby

Pocket
LINEで送る

You may also like...