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

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

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

作成日: 更新日:

基本的な使い方

try_convertメソッドは、与えられたオブジェクトがInteger型へ変換可能かどうかを安全に試み、その結果を返すメソッドです。このメソッドはIntegerクラスに属しており、他の様々な型のオブジェクトを整数として扱いたい場合に利用されます。

引数として変換を試みる対象オブジェクトobjを受け取ります。try_convertメソッドは、内部的にobjto_intメソッドを持っているかどうかを確認します。もしobjto_intメソッドを実装しており、かつそのto_intメソッドがIntegerのインスタンスを返した場合、try_convertメソッドはそのIntegerオブジェクトを戻り値として返します。これは、対象オブジェクトが自身を整数として表現する能力があることを示しています。

一方、objto_intメソッドを持たない場合や、to_intメソッドがInteger以外のオブジェクトを返した場合、try_convertメソッドは変換に失敗したことを示すnilを返します。この特徴により、変換の成否を簡単に判断でき、予期せぬ型変換エラーによるプログラムの停止を未然に防ぐことが可能です。

to_iメソッドが変換できない場合でも0などを返して常にIntegerを返そうとするのに対し、try_convertメソッドは変換が不可能であれば明確にnilを返すため、より厳密な型チェックや安全なデータ処理が求められる状況に適しています。例えば、外部からの入力データを整数として処理する前に、そのデータが本当に整数として妥当であるかを確認する際などに特に有効なメソッドです。

構文(syntax)

1Integer.try_convert("123")

引数(parameters)

req

  • obj: 変換を試みるオブジェクト

戻り値(return)

Integer or nil

Integer#try_convert は、引数を Integer 型に変換しようと試み、成功した場合はその Integer 型の値を返します。変換できなかった場合は nil を返します。

関連コンテンツ

関連プログラミング言語