LoginSignup
0
0

More than 5 years have passed since last update.

Rubyのselect,map,eachのサンプルメモ

Posted at

メモ

test.rb
require "pp"

arrs = [1,2,3,4,5]

# select
# ブロック引数itemに要素を入れながらブロックを繰り返し、ブロックの戻り値が真になったときの要素を集め、新しい配列にして返します
result_select = arrs.select do |item|
  true
end
pp result_select

result_select = arrs.select do |item|
  false
end

pp result_select

result_select = arrs.select do |item|
  item == 3
end

pp result_select

# each
# 配列の要素の数だけブロックを繰り返し実行します。繰り返しごとにブロック引数には各要素が順に入ります。戻り値はレシーバ自身

result_select = arrs.each do |item|
  true
end
pp result_select

result_select = arrs.each do |item|
  false
end
pp result_select

result_select = arrs.each do |item|
  pp item
  item == 3
end
pp result_select

# map
# mapメソッドは、要素の数だけ繰り返しブロックを実行し、ブロックの戻り値を集めた配列を作成して返します

result_select = arrs.map do |item|
  true
end
pp result_select

result_select = arrs.map do |item|
  false
end
pp result_select

result_select = arrs.map do |item|
  item+1
end
pp result_select
実行結果
[1, 2, 3, 4, 5]
[]
[3]
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5]
1
2
3
4
5
[1, 2, 3, 4, 5]
[true, true, true, true, true]
[false, false, false, false, false]
[2, 3, 4, 5, 6]

参考

map, map! (Array) - Rubyリファレンス https://ref.xaio.jp/ruby/classes/array/map

select (Array) - Rubyリファレンス https://ref.xaio.jp/ruby/classes/array/select

each (Array) - Rubyリファレンス https://ref.xaio.jp/ruby/classes/array/each

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0