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

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

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

作成日: 更新日:

基本的な使い方

<=>メソッドは、二つの文字列を比較し、その順序関係を示す整数を返すメソッドです。このメソッドは、Stringクラスのインスタンスに対し、レシーバである文字列と引数の文字列の、辞書順での大小関係を評価します。

比較は、文字コードに基づいた辞書順で行われます。例えば、「Apple」と「Banana」を比較した場合、「Apple」の方が辞書順で前に来るため小さいと判断されます。

戻り値は、01-1のいずれかの整数値、またはnilです。具体的には、両文字列が等しい場合は0、レシーバが引数より辞書順で大きい場合は1、小さい場合は-1を返します。例えば、"hello" <=> "hello"0"world" <=> "hello"1"apple" <=> "banana"-1です。また、引数がString型ではないなど、比較できない場合はnilが返されます。

この<=>メソッドは、String型オブジェクトの比較の基礎となるため、>, <, == といった一般的な比較演算子も、内部的にこのメソッドの結果を利用して動作します。文字列のソート処理や、特定の順序での判定が必要な場面で活用される、重要なメソッドです。

構文(syntax)

1"string_a" <=> "string_b"

引数(parameters)

req

  • other: String: 比較対象となる文字列

戻り値(return)

Integer

Stringクラスの<=>メソッドは、レシーバ文字列と引数文字列を比較し、その結果を整数で返します。レシーバ文字列が引数文字列より前に来る場合は-1、同じ場合は0、後に来る場合は1を返します。

関連コンテンツ

関連プログラミング言語