0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

.each_with_index(object)について

Last updated at Posted at 2020-04-23

each_with_indexとは

eachメソッドの効果に加えて、配列の要素の番号も扱うことができるメソッド。

書き方

fruits=[“いちご”, “バナナ”, “みかん”]

fruits.each_with_index do |item, i|

puts “#{i}番目の果物は#{item}です。”

end

【出力結果】

0番目の要素はいちごです。

1番目の要素はバナナです。

2番目の要素はみかんです。

といった結果になります!

each.with_indexの違い

each.with_indexを使えば、手軽に0以外の値から開始させることができる。


fruits=[“いちご”, “バナナ”, “みかん”]

fruits.each.with_index(10) do |item, i|

puts “#{i}番目の果物は#{item}です。”

end

【出力結果】

10番目の要素はいちごです。

11番目の要素はバナナです。

12番目の要素はみかんです。

といった結果になります!

##each_with_objectとは
与えられた任意のオブジェクトと要素をブロックに渡し繰り返し、最初に与えられたオブジェクトを返します。

-例-


arr = [1, 2, 3]
result = arr.each_with_object([]) do |item, memo|
  p item # => 1...
  memo << 1
end
pp result # => [1, 1, 1]

result = arr.each_with_object([1, 2, 3]) do |item, memo|
  memo << 1
end
pp result # => [1, 2, 3, 1, 1, 1]

result = arr.each_with_object([]) do |i, a|
  a << i*2
end
pp result # => [2, 4, 6]

まとめ

自動で番号を振り分けてみたい時に使用してみましょう!!

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?