<DAY64>Rubyのハッシュ、配列の取り出し方について
#学習時間と累計時間
●学習日数 64日
●学習時間(本日) 5.0時間
●累計学習時間 170.0時間
●一日あたりの平均学習時間 2.65時間
<問題作った背景>
progateを通じてrailsで簡単なツイッターアプリやRails,ActiveRecord,Ruby,SQL,Git,HTML,CSSの基礎は学んだ。 模写すれば、アプリは作れるが、ロジック組みが全く出来る気がしない事に気づく。 Rubyの基礎文法は間違いなく大事。ロジックを組むのは脳みそ使うし、脳みそをエンジニア脳に一日でも早く変換していく必要がある。
コードを打つ→実行→結果の確認→エラーの理由を知る。 このサイクルが理解に良いと体感した。
<irbでコードを打ち込む>
コードをカタカタ打ちまくるにはターミナルでirbと打ち込み、rubyのコードが打ち込めるモードにするが手取り早い。 これを繰り返してコード打ち実行を繰り返すとテキストで理解する時以上に楽しいし、理解も早く進むと感じる。
<こんな配列も出来る>
配列といえば
ary = ["tanaka", "satou", "suzuki"] ary[0] => "tanaka"
配列にハッシュが格納されているケースも多々あります。
ary = ["tanaka", ["masa", "suzuki"], {name: "ota"}, {:name => "kato"}, {"name"=> "take"}]
これも配列である。最初は取り出し方に迷った。
ary[1][0] => "masa" ary[2][:name] => "ota" ary[4]["name"] => "take"
となる。
<ハッシュについて>
この3通りあるよね。結論 name2とname3は同じ。name3の書き方が多い
name1 = {"name" => "taro"} name2 = {:name => "taro"} name3 = {name: "taro"}
ここでの違いは name1はキーを文字列としている name2,3はキーをシンボルとしている事。 シンボルとは、文字列の皮を被った数値であり、実行速度を見ると、シンボルでキーを指定した方が早い。 取り出す時はキーがシンボルなのか文字列なのか留意する。