0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Ruby 問題① ハッシュの基礎について

Last updated at Posted at 2021-05-03

#はじめに#
こんにちは

3月から学習を始めてアウトプットを兼ねて投稿させていただきます。

#問題#

ruby.rb
  puts menu.keys
  puts menu.values

上記のメソッドを記述した時、

ruby.rb
餃子
炒飯
ラーメン
240
450
650

とターミナルに表示なれるような変数studentを作成するためのコードを考えて下さい。

#ヒント#
・ハッシュの生成
・keyとvalueの存在

##解答##

ruby.rb
menu = {餃子:240, 炒飯:450, ラーメン:650,}

puts menu.keys
puts menu.values

餃子
炒飯
ラーメン
240
450
650

#解説#

ハッシュとは
ハッシュとは「データ」とそれに対応する「名前」のセットを要素として持つ値です。
ハッシュとは、キーと値の組み合わせをセットにして複数のデータを管理することが出来ます。

変数 = {}
#hashの宣言
#{}波括弧を使います

シンボルとは
シンボルは、見た目は文字列のようですが、実際の中身は数値になっている値です。

複数のデータを持つことのできる値という点では、配列と同じです。
しかし、ハッシュは「キー」で管理する事ができます。

試しに配列の場合を記述します。

ruby.rb
menu = ["餃子",240,"炒飯",450,"ラーメン",650]

puts menu

餃子
240
炒飯
450
ラーメン
650

挙動は似ているようで読みにくい場合があります。
ハッシュとの大きな違いは、値にそれぞれキーを設定できるという事です。

##hashの利用について##
railsでUserモデルでユーザーのデータを取得したと考える事にします。

User = ["name","tom","age",25,"address","tokyo"]

puts User[1] #=> tom
puts User[3] #=> 25
puts User[5] #=> tokyo

配列だと呼び出す時に[添字]で呼び出すため何を呼び出しているかが見にくいです。

User = {name:"tom", age:25, address:"tokyo"}

puts User[:name] #=> tom
puts User[:age] #=> 25
puts User[:address] #=> tokyo

この記述だと何の値を呼び出しているかが一目でわかります。

0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?