箱のプログラミング日記。

渋谷の自社開発企業でRails書いてます。

メソッド内でハッシュの中身を取り出す【引数】【ハッシュ】

 

例)

def dog_info(dog,input)
puts dog[input]
end

dog = {name: "コロン", type: => "チワワ", gender: => "メス"}

puts "以下から知りたい情報を一つ選んでください
・name
・type
・gender"
input = gets.chomp
dog_info(dog,input)

 

 

 

 

解説)

以下の情報をもった犬がいて

dog = {name: "コロン", type: => "チワワ", gender: => "メス"}
 
 
犬について知りたい情報を入力させます
# def dog_info(dog,input)
# puts dog[input]
# end

# dog = {name: "コロン", type: => "チワワ", gender: => "メス"}

puts "以下から知りたい情報を一つ選んでください
・name
・type
・gender"
input = gets.chomp
# dog_info(dog,input)
入力した値はinputに代入します
 
 
次にdog_infoメソッドを呼び出します。ハッシュオブジェクトであるdogの中から
入力したキーの値が取り出され、出力されるようにします
def dog_info(dog,input)
puts dog[input]
end

# dog = {name: "コロン", type: => "チワワ", gender: => "メス"}

# puts "以下から知りたい情報を一つ選んでください
# ・name
# ・type
# ・gender"
# input = gets.chomp
dog_info(dog,input)
その際、引数を渡します(4行目で定義したハッシュオブジェクトdogと、入力した値を代入したinput)
引数を渡すことでdog_infoメソッドの中で
・ハッシュオブジェクトdogの中身を取り出す
・getsにより入力しinputに代入した値を使う
上記2点が可能になります。
 
たとえば、nameを入力したら
dog = {name: "コロン", type: => "チワワ", gender: => "メス"}
puts dog[input] #inputはname
ハッシュからnameキーの値である”コロン”が取り出され、出力されるはずです