0
1

More than 3 years have passed since last update.

配列とハッシュ

Last updated at Posted at 2019-12-19

配列とハッシュ

日々のRubyの学習で学んだことを備忘録としてつぶやいていきます。

配列

配列とは?

通常の変数を1つの箱と捉えれば、配列は、仕切りがある箱のようなもの。
配列を用いることで1つの変数で複数の値を管理することができる。
配列は、要素を順番で管理する。
◯番目といった順番を表す数字のことをインデックスと言う。

インデックスは0番目から始めることに注意!!

配列の書き方

ary.rb
ary = ["10","20","30"]
# 3つの値を1つの変数に格納している

ハッシュ

ハッシュとは?

ハッシュも配列と同じで、複数の値を一括で管理したいときに使われる。
配列は、順番で管理していたことに対し、ハッシュは、名前で管理することができる。
ハッシュとは、キー名: 値の形式で値を取ってくることができる。

ハッシュの書き方

hash.rb
hash = {name: "reo", age: 20, country: "japan"}
# キー名: バリューの形式で値を格納している

配列のハッシュの知識を組み合わせたコード

work.rb
students = [
  {name: "田中", Japanese: 85, Math: 62, English: 77},
  {name: "佐藤", Japanese: 90, Math: 40, English: 98},
  {name: "ボブ", Japanese:  2, Math: 50, English: 100}
]

students.each do |student|
  line = "--------------"
  puts line
  sum = student[:Japanese] + student[:Math] + student[:English]
  puts "解答者: #{student[:name]}さん
        国語:   #{student[:Japanese]}点
        数学:   #{student[:Math]}点
        英語:   #{student[:English]}点
        合計:   #{sum}点"
end
ターミナル出力結果
-----------------
解答者:田中さん
国語:85点
数学:62点
英語:77点
合計:224点
-----------------
解答者:佐藤さん
国語:90点
数学:40点
英語:98点
合計:228点
-----------------
解答者:ボブさん
国語:2点
数学:50点
英語:100点
合計:152点
0
1
0

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
1