Output Diary

プログラミング × 読書 のアウトプットを発信しています

【Ruby】配列・ハッシュとは

 

f:id:kina_kq:20210220194204p:plain

 
 
 
 
 配列はオブジェクト(複数の値)をまとめて管理するための部品です。
 
 
配列で書くと、
["パンダ", "ゴリラ", "ライオン"]のようになります。
 
 
 数値や文字列と同じように、配列自身もオブジェクトになります。
オブジェクトの種類のことをクラスと呼びます。
 
整数クラス→Integer
少数クラス→Float
文字列クラス→String
配列クラス→Array
 
 
Arrayは、「配列」という意味です。
 
 
配列のことを、
・配列オブジェクト
・Arrayオブジェクト
・配列
と呼びます。
 
 
配列に入っているそれぞれの値(パンダ, ゴリラ, ライオンのことを
要素と呼びます。
 
 

配列で書くことのメリット

配列を使うと、複数の文字列や数値をまとめて書くことができます◎
 
 

インデックス番号

配列の要素には、前から順に「0, 1, 2, ...」と数字が割り振られています。これをインデックス番号といいます。
インデックス番号は0から始まることに注意してください。
 
 

繰り返し処理

繰り返し処理には、each文というものを使います。
each文を使うと、配列の要素を順番に取り出して処理を行うことができます。
each文は、「配列.each do |変数名|」と書き、「end」までの間に実行したい処理を書きます。
each文は配列の要素の数だけ繰り返し処理を行います。
 
 
それぞれの変数の使用できる範囲のことをスコープと呼びます
 

ハッシュ

複数の値をまとめて管理する方法としては、配列の他にもハッシュというものがあります。
配列は複数の値を並べて管理するのに対して、ハッシュはそれぞれの値にキーと呼ばれる名前をつけて管理します。
ハッシュは、{キー1 => 値1, キー2 => 値2}のようにつくります。
 
#配列
[banana, apple, watermelon]
 
#ハッシュ
{"name" => "apple", "age" => 51}
 
ハッシュは以下の図のように、キーの部分を文字列ではなく、先頭にコロン「:」を付けた書き方をすることもできます。
この「:name」という書き方のことをシンボルと言います。
 
#ハッシュ
{:name => "apple", :age => 51}
 
シンボルとは、文字を「"」や「'」で囲む代わりに、先頭に「:」をつけた書き方のことをいいます。
シンボルは、ハッシュのキーとしてよく使われます。
 
ハッシュのキーにシンボルを用いるときには、省略した書き方をすることができます。具体的には「:key =>」を「key:」というように省略することができます。
 
#ハッシュ
{:name => "apple", :age => 51}
{name:"apple", age:51}
 
 
 

ハッシュの書き方まとめ

 
#キーが文字列
{"name" => "apple", "age" => 51}
#キーがシンボル
{:name => "apple", :age => 51}
#キーがシンボル(省略)
{name:"apple", age:51}
 

nillとは

ハッシュから存在しないキーの値を取り出した時の「何もない」という値は、Rubyでは「nil」(読み方:ニル)という特別な値で表現されます。
nil」は「何もない」という意味なので、putsしても何も表示されません。