Bye Bye Moore

猫マンション建築の野望を胸に零細事業主として資本主義の荒波に漕ぎ出したアラサー男の技術メモ

inspectメソッドはオブジェクトを可視化できる文字列として返す

inspectメソッドはオブジェクトを人間が読める形にした文字列として返します。
Ruby2.0系から、to_sに代わりirbの出力で用いられています。

> 0x11.inspect
#=> "17"

ぱっと見to_sのようです。
が、これは全ての基礎となっているObjectクラスに実装されたメソッドであるため
動作が保証されています。
実際、挙動も微妙に違います。inspectのほうが、より誤解をし易い形で返してくれます。

文字列

> "hogehoge'j()'".to_s
#=> "hogehoge'j()'"

> "hogehoge'j()'".inspect
#=> "\"hogehoge'j()'\""

有理数

> Rational(8,9).inspect
#=> "(8/9)"

> Rational(8,9).to_s
#=> "8/9"