学んだことを随時まとめてく
~間違っている点があれば是非教えてください~
配列メソッドを使う前に
「ブロック」と「ブロックパラメータ」について理解する
- ブロック、ブロックパラメータとは?
- ブロックとは、doからendまでのプログラムのひとかたまりの部分のこと、メソッドを呼び出すときに渡せる。
- | |で囲んだブロックパラメータ(ブロック変数)と呼ばれるものを指定できる。
num = [1,2,3,4,5]
num.each do |n| #| |中のnがブロックパラメータ
puts n if n.odd #do ~ endまでがブロック/ood 整数が奇数かどうかを判定するメソッド
end
# >>1,3,5
any?
配列の値を一つずつブロック変数に格納して最低1つ条件に当てはまるか判定array = [1, 2, 3, 4, 5]
#配列.any? {|ブロック変数| 条件}
array.any? { |num| num > 3 } #true(4,5が当てはまる)
array.any? { |num| num > 6 } #false(1つも当てはまらない)
include?
指定した要素が配列に含まれているかどうかを確認
返り値は真偽値で返す
array = [1, 2, 3, 4, 5]
puts numbers.include?(3) # true
puts numbers.include?(6) # false
each
配列の各要素に対して指定したブロックを順番に実行する
配列の要素数だけブロックが繰り返し実行
numbers = [1, 2, 3, 4, 5]
numbers.each { |num| puts num * 2 } #{ブロック}
map
配列の各要素に対して指定したブロック内の処理を実行し、
その結果を新しい配列に格納する
numbers = [1, 2, 3, 4, 5]
doubled_numbers = numbers.map { |num| num * 2 }
# >>doubled_numbers = [2, 4, 6, 8, 10]
select
配列の各要素に対して指定した条件(ブロック内の処理)を満たす要素を抽出し、
新しい配列に格納する
numbers = [1, 2, 3, 4, 5]
even_numbers = numbers.select { |num| num.even? } #even? 整数が偶数かどうかを判定するメソッド
# >>even_numbers = [2, 4]