※本サイトで紹介している商品・サービス等の外部リンクには、アフィリエイト広告が含まれる場合があります。
Arrayのメソッド
文字列を合体させる
names = ["I", "am", "a", "teacher"]
puts names.join(" ")
# I am a teacher
要素の合計値を計算する
scores = [90, 78, 89]
puts scores.sum
# 257
要素をランダムに取得する
scores = [90, 78, 89]
puts scores.sample
# 78
配列の順番を入れ替える(降順)
puts [3, 5, 6, 7, 54, 34, 2564, 8, 66].sort
# 3
# 5
# 6
# 7
# 8
# 34
# 54
# 66
# 2564
配列をなくし、フラットにする
puts [[34, 25], [65, 92]].flatten
# 34
# 25
# 65
# 92
puts [34, 25, 65, 92].flatten
# 34
# 25
# 65
# 92
配列から要素をひとつずつ取り出して、指定された条件を満たすものを探す
例)3の倍数を探す
array = [3, 4, 64, 89, 99, 120, 55, 9756]
# element(要素) の "e"
puts array.select { |e| e % 3 == 0}
# 3
# 99
# 120
# 9756
Hash
ふたつとも結果は同じ 80 が出力される
scores = {math: 80, english: 78, history: 45}
puts scores[:math]
# 80
puts scores.fetch(:math)
# 80
配列の key のみ返ってくる
scores = {math: 80, english: 78, history: 45}
puts scores.keys
# math
# english
# history
配列の value のみ返ってくる
scores = {math: 80, english: 78, history: 45}
puts scores.values
# 80
# 78
# 45
Hashを配列に変換する
scores = {math: 80, english: 78, history: 45}
puts scores.to_a
# math
# 80
# english
# 78
# history
# 45
keyを指定してHashを削除する
scores = {math: 80, english: 78, history: 45}
scores.delete(:math)
puts scores
# {:english=>78, :history=>45}
配列に合体させる
scores = {math: 80, english: 78, history: 45}
puts scores.merge({japanese: 67})
# {:math=>80, :english=>78, :history=>45, :japanese=>67}
Keyが存在しない場合
scores = {math: 80, english: 78, history: 45}
puts scores[:japanese]
# nil
↑ 「nil
」
scores = {math: 80, english: 78, history: 45}
puts scores.fetch(:japanese)
# `fetch': key not found: :japanese
↑ fetch
の場合は「nil
」ではなく、エラーが返ってくる
#DAY28