BNBのプログラミング勉強記録

ガチのプログラミング初心者が駆け上がっていくブログ

メモ(Ruby II)

配列。javascriptと同様、頭が0。

languages=["日本語","英語","スペイン語"]

インデックス番号が1の要素を出力

puts languages[1]

each文を用いて、要素ごとに「○○を話せます」と出力

languages.each do |language|
 puts "#{language}を話せます"
end

変数examにハッシュを代入。ハッシュは、{キー1 => 値1, キー2 => 値2}のようにつくる

exam={"subject"=>"Math","score"=>"80"}

キー「"subject"」の値を出力

puts exam["subject"]

キーが「"grade"」、値が「"good"」の要素を追加

exam["grade"]="good"

キーをシンボルで書き換え

exam = {:subject => "Math", :score => 80}

キー「:score」の値を出力

puts exam[:score]

省略した書き方で書き換え

exam = {subject:"Math", score:80}

条件式にキー「:score」の値を使うif文をつくる

「if ハッシュ[キー]」とすることで、値がない場合、すなわちnilの場合はfalseとして扱われる

if exam[:score]
  puts "#{exam[:subject]}の結果は#{exam[:score]}点です"
else
  puts "#{exam[:subject]}の結果は分かりません"
end

要素がハッシュの配列を作成

exams=[
  {subject: "Math", score: 80},
  {subject: "Science", score: 55}
    ]

インデックス番号が1の要素の値を出力

puts exams[1]

インデックス番号が1の要素の、キーが「:score」の値を出力

puts exams[1][:score]

each文を用いて、要素ごとに「○○の結果は△△点です」と出力

exams.each do|exam|
  puts "#{exam[:subject]}の結果は#{exam[:score]}点です"
end