Techioz Blog

Rubyにはデータ型があるのでしょうか?

概要

場合によっては、キー/値データを処理する必要があります。

配列にはサイズの制約がないため、私は配列を使用するのが好きではありません (誤って 3 つ以上の項目を追加することが非常に簡単で、さらに後でサイズを検証する必要が生じます)。さらに、0 と 1 のインデックスは魔法の数字になり、意味を伝えるのに不十分です (「0 と言うとき、実際には頭のことを指します…」)。

誤って余分なエントリを追加する可能性があるため、ハッシュも適切ではありません。

この問題を解決するために次のクラスを作成しました。

class Pair
  attr_accessor :head, :tail

  def initialize(h, t)
      @head, @tail = h, t
  end
end

これはうまく機能し、問題は解決しますが、知りたいのは、Ruby の標準ライブラリにはそのようなクラスがすでに付属しているのかということです。

解決策

いいえ、Rubyには標準のPairクラスがありません。

「Ruby でタプルを使用する?」を参照してください。

解決策には、あなたと同様のクラス、Tuples gem、または OpenStruct のいずれかを使用することが含まれます。

Python にはタプルがありますが、Java にもタプルはありません。「値のペアの Java コレクション? (タプル?)」。