【Ruby3.x】Hash::<()メソッドの使い方
<メソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
`<メソッドは、二つのハッシュの包含関係を比較するメソッドです。
このメソッドは、左辺のハッシュが右辺のハッシュの「真部分集合」である場合にtrueを返します。真部分集合とは、左辺のハッシュに含まれるすべてのキーと値のペアが右辺のハッシュにも存在し、さらに左辺と右辺のハッシュが完全に同一ではない状態を指します。
したがって、左辺のハッシュが右辺のハッシュに完全に含まれているだけでなく、右辺のハッシュが左辺のハッシュよりも多くの要素を持つ、あるいは内容が一部異なる(ただし左辺が完全に含まれる形である)場合にtrueを返します。
もし、左辺と右辺のハッシュが完全に同じ内容であった場合は、真部分集合とはみなされないため、このメソッドはfalseを返します。
具体例として、hash1 = {a: 1} と hash2 = {a: 1, b: 2} の場合、hash1 < hash2 はtrueとなります。これはhash1のすべての要素がhash2に含まれ、かつhash1とhash2が同一ではないためです。一方で、hash3 = {a: 1, b: 2} と hash4 = {a: 1, b: 2} の場合、hash3 < hash4 はfalseとなります。これは両者が同一であるため、真部分集合の条件を満たさないからです。
このメソッドは、あるハッシュが別のハッシュに完全に包含され、かつ厳密に「小さい」かどうかを判断したい場合に利用されます。
構文(syntax)
1hash1 < hash2
引数(parameters)
引数なし
引数はありません
戻り値(return)
Boolean
2つのハッシュを比較し、左辺のハッシュが右辺のハッシュよりも「小さい」場合に真偽値 true を返します。それ以外の場合は false を返します。