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

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

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

作成日: 更新日:

基本的な使い方

===メソッドは、ケース同等性(case equality)のチェックを実行するメソッドです。Rubyにおいて、===メソッドは、case文のwhen節で、値が特定のパターンにマッチするかどうかを判定するために用いられる、特別な同等性チェック機構を提供します。

Setクラスにおける===メソッドは、自身が引数で与えられたSetオブジェクトのスーパーセットであるかどうかを判定します。具体的に説明しますと、self === other_set と記述した場合、もしother_setに含まれる全ての要素がselfにも含まれていればtrueを返します。言い換えれば、other_setselfのサブセットである場合にtrueを返すということです。もしother_setに、selfには存在しない要素が一つでもあればfalseを返します。

この挙動は、self.superset?(other_set) メソッドを呼び出した場合と全く同じ結果となります。つまり、「selfother_setを完全に内包しているか」を簡潔に確認したい場合にこのメソッドが利用できます。特に、複数のSetオブジェクトの中から、ある特定のSetをサブセットとして含むSetを判別したいようなcase文の条件分岐で非常に便利に使用できます。

構文(syntax)

1require 'set'
2
3Set[1, 2] === Set[1, 2, 3]

引数(parameters)

object

  • object: 集合に含まれているか確認したいオブジェクト

戻り値(return)

Boolean

指定されたオブジェクトがSetの要素として含まれているかどうかを真偽値(trueまたはfalse)で返します。

関連コンテンツ

関連プログラミング言語