Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Ruby3.x】String::dup()メソッドの使い方

dupメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

dupメソッドは、レシーバであるStringオブジェクトの複製を新しく作成するメソッドです。このメソッドを実行すると、元の文字列と同じ内容を持つ、全く新しいStringオブジェクトが生成されます。元のオブジェクトと複製されたオブジェクトは、異なるメモリ上の領域に存在するため、お互いに独立した存在となります。

具体的には、dupメソッドで作成された複製オブジェクトを変更しても、元のオブジェクトには一切影響を与えません。これにより、元の文字列を保護しながら、その内容を元にした別の操作を行いたい場合に非常に役立ちます。

Rubyにはcloneメソッドも複製を作成するために存在しますが、dupメソッドは主にオブジェクトのインスタンス変数(Stringの場合はその文字列データ)のみをコピーします。フリーズ状態や特異メソッドといった、より詳細な属性まではコピーしません。そのため、シンプルに文字列の内容だけをコピーして独立した新しいオブジェクトを作成したい場合に、dupメソッドが適しています。

構文(syntax)

1original_string = "Hello Ruby".freeze
2duplicate_string = original_string.dup
3puts duplicate_string
4puts duplicate_string.frozen?

引数(parameters)

引数なし

引数はありません

戻り値(return)

String

このメソッドは、レシーバとなる文字列オブジェクトの完全なコピー(独立した新しいオブジェクト)を返します。

関連コンテンツ

関連プログラミング言語