重複の可能性:
この Ruby オブジェクトには、同じことを行う 2 つの to_s メソッドと inspect メソッドがあるのはなぜですか? というか、そうらしい
Ruby: x が変数の場合、x.inspect の使用と x.to_s の使用に違いはありますか? 2つの方法の違いは何ですか?
重複の可能性:
この Ruby オブジェクトには、同じことを行う 2 つの to_s メソッドと inspect メソッドがあるのはなぜですか? というか、そうらしい
Ruby: x が変数の場合、x.inspect の使用と x.to_s の使用に違いはありますか? 2つの方法の違いは何ですか?
通常、それらは常に同じではありません。のドキュメントによるとObject.inspect()
:
オーバーライドされていない場合は、to_s メソッドを使用して文字列を生成します。
デフォルトでは、 をinspect()
呼び出すため、同じものを返しますto_s()
。ただし、1 つのことを行うためにオーバーライドすることが理にかなっている場合もありますto_s()
が、irb からオブジェクトを検査するときは、より詳細な情報を確認したい場合があります。そのため、さまざまなことを行うように設定できます。