【Ruby3.x】Data::==()メソッドの使い方
==メソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
==メソッドは、Dataクラスのオブジェクトが保持する値の等価性を比較するメソッドです。Ruby 3で導入されたDataクラスは、一度作成したら変更できない(不変な)値オブジェクトを簡単に作成するための機能を提供します。この==メソッドは、2つのDataオブジェクトが「同じ値」を持っているかどうかを判断するために使用されます。
具体的には、比較対象となる両方のDataオブジェクトが、定義時に指定されたすべての要素(メンバー)について、それぞれ対応する値がすべて等しい場合にのみ真(true)を返します。一つでも異なる要素があれば、偽(false)となります。これにより、Dataオブジェクトは、その内容が完全に一致する場合に等しいとみなされます。この挙動は、Dataオブジェクトが構造体のように、保持しているデータの集合そのものを一つの「値」として扱い、その値が等しいかどうかを直感的に比較できることを意味します。これは、オブジェクトそのものの同一性(メモリ上の場所など)を比較するequal?メソッドとは異なり、あくまでオブジェクトが持つ「値」が等しいかを判断するものです。
構文(syntax)
1Data.define(:x, :y).new(1, 2) == Data.define(:x, :y).new(1, 2)
引数(parameters)
other
- other: 比較対象となるオブジェクト
戻り値(return)
Boolean
指定された二つのDataオブジェクトが等しい場合は真(true)を、等しくない場合は偽(false)を返します。