【Ruby3.x】String::new()メソッドの使い方
newメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
newメソッドは、新しいStringオブジェクトを生成するメソッドです。このメソッドは、Stringクラスのインスタンスを明示的に作成するために使用されます。
引数なしでString.newを呼び出すと、中身が空の新しいStringオブジェクトが作成されます。これは、""という文字列リテラルで生成される空の文字列オブジェクトと同じように扱うことができますが、メモリ上では新しい独立したオブジェクトとして存在します。
また、String.newには引数を渡すことも可能です。引数に他のオブジェクトを渡した場合、Rubyはそのオブジェクトを内部的に文字列に変換(例えば、オブジェクトが持つto_sメソッドを呼び出すなどして)し、その結果から新しいStringオブジェクトを生成します。例えば、String.new(123)と記述すると、数値123が文字列"123"に変換され、その内容を持つ新しいStringオブジェクトが得られます。
しかし、Rubyプログラミングにおいては、一般的に文字列リテラル(例: "こんにちは"や'Ruby')を使用するか、あるいは様々な型のオブジェクトを文字列に変換して新しいStringオブジェクトを返すString()関数を使用する方が、より簡潔で推奨される方法です。String.newメソッドは、特定の高度なシナリオや、他のメソッドと組み合わせて文字列の生成プロセスをより細かく制御したい場合に活用されることがあります。
構文(syntax)
1String.new
引数(parameters)
str_or_io = nil
- str_or_io = nil: 新しい文字列を初期化するための文字列、またはIOオブジェクトを指定します。nilを指定すると空の文字列が生成されます。
戻り値(return)
String
新しく空の文字列オブジェクトを生成します。