each |
[1, 2, 3].each do |num|
puts num
end
|
List(1, 2, 3).foreach { num =>
println(num)
}
|
|
map |
[1, 2, 3].map do |num|
num * 2
end
# => [2, 4, 6]
|
List(1, 2, 3).map { num =>
num * 2
}
// => List(2, 4, 6)
|
|
select |
[1, 2, 3, 4].select do |num|
num % 2 == 0
end
# => [2, 4]
|
List(1, 2, 3, 4).filter { num =>
num % 2 == 0
}
// => List(2, 4)
|
|
reject |
[1, 2, 3, 4].reject do |num|
num % 2 == 0
end
# => [1, 3]
|
List(1, 2, 3, 4).filterNot { num =>
num % 2 == 0
}
// => List(1, 3)
|
|
inject |
[1, 2, 3, 4].inject(0) do |sum, n|
sum + n
end
# => 10
|
List(1, 2, 3, 4).foldLeft(0) { (sum, n) =>
sum + n
}
// => 10
|
|
to_proc(&)を使った省略記法 |
[1, 2, 3].map(&:to_s)
# => ["1", "2", "3"]
|
List(1, 2, 3).map(_.toString)
// => List[String] = List("1", "2", "3")
|
プレースホルダ `_` を使うことで同じくらい短く書ける。 |