ちょっとだけ読み返した

というかまた最初から読んだ。たのしいRubyが、途中ある部分で、全然たのしくないRubyになってしまって悲しくなった。
メソッドの呼び出しを制限する(132ページ)のprotectedの例(134ページ)がなかなか理解できなかった!というか今も理解してるかどうかわかんない、っていうかたぶんわかってない。
あとたまに、例をはしょってあって実際に自分で確認しないとわからないところがあるから気を抜けない。compact!とか確認しないと不安だった(電車で読んでた)。


てことで実際確認した。

a = [1,2,3,nil]
b = [1,2,3]

p a            #=>[1,2,3,nil]
p a.compact    #=>[1,2,3]
p a            #=>[1,2,3,nil]  compactはもとの配列を変化させない
p a.compact!   #=>[1,2,3]
p a            #=>[1,2,3]      ひとつ上の行のcompact!でnil消えた

p b            #=>[1,2,3]
p b.compact    #=>[1,2,3]
p b            #=>[1,2,3]
p b.compact!   #=>nil          何も取り除かれなかったからnil返した
p b            #=>[1,2,3]

たぶん明日には忘れる。