Home » ruby » ruby ハッシュオブジェクトでよく使われるメソッド

ruby ハッシュオブジェクトでよく使われるメソッド

ハッシュオブジェクトを使うときに、

便利なメソッドを紹介していきたいとおもいます。

keysメソッドでハッシュのキーのみ出力

ハッシュでkeysメソッドを使用して、キーのみを出力していきたいと思います。

keysメソッドを使用してnilが返ってきた場合、値がないということです。

hash = { key1: "value1", key2: "value2", key3: "value3"}
irb(main):009:0> puts hash.keys
key1
key2
key3

キーだけを出力したい場合には、うってつけのメソッドです。

key?メソッドでキーがあるかどうかを確認する

key?メソッドは、引数に指定したキーがあるかどうかを確認するメソッドです。

返り値は、指定したキーがあればtrue、指定したキーがなければfalseが返ってきます。

hash = { key1: "value1", key2: "value2", key3: "value3"}
irb(main):010:0> puts hash.key?(:key3)
true
irb(main):011:0> puts hash.key?(:key4)
false

キーが存在した場合true、存在しない場合falseのように
出力されているのがわかります。
key?メソッド以外にも、include?メソッドやhas_key?でも同じ効果をもってます。

valuesメソッドを使用して値のみを出力する

valuesメソッドを使用して、値のみを出力していきたいと思います。

値が無い場合は、nilが返り値として返ってきます。

hash = { key1: "value1", key2: "value2", key3: "value3"}
irb(main):007:0> puts hash.values
value1
value2
value3

値のみを出力したい場合は、うってつけのメソッドです。

value?メソッドで引数に指定した値があるかどうかを確認する

value?メソッドは、引数に指定した値があるかどうかを確認していきたいとおもいます。
引数に指定した値があればtrue、無ければfalseの返り値が返ってきます。

hash = { key1: "value1", key2: "value2", key3: "value3"}
irb(main):014:0> puts hash.value?("value3")
true
irb(main):015:0> puts hash.value?("value5")
false

値が存在すればtrue、無ければfalseのように
出力されているのが確認できます。

empty?メソッドでハッシュが空か空ではないかを確認する

empty?メソッドで空がどうかを確認するメソッドです。
実際に、empty?メソッドを使います。

hash = { key1: "value1", key2: "value2", key3: "value3"}
hash1 = {}
irb(main):022:0> hash.empty?
=> false
irb(main):023:0> hash1.empty?
=> true

ハッシュが空でない場合はfalse、空だった場合はtrueのように
出力されているのが確認できます

sizeメソッドでハッシュの要素(キーと値)を数を確認するメソッドです。

ハッシュに要素がどれほどあるか、
確認する際に便利なsizeメソッドを使っていきたいとおもいます

hash = { key1: "value1", key2: "value2", key3: "value3"}
hash1 = {}
irb(main):025:0> puts hash.size
3
irb(main):026:0> puts hash1.size
0

要素数を確認したい場合は、便利なメソッドです。
size以外にlengthといわれるメソッドがあるんですが、
それもsizeと同様のメソッドです。

追記
今回あげたもの意外に、
ハッシュに関するメソッドが多くあるので、
ハッシュを使う場合、参照して
用途に応じてメソッドを使い分けていけば
スムーズに開発が進みます。
リファレンス載せておきます。

参考文献


,

コメントを残す

%d人のブロガーが「いいね」をつけました。