coding for food

[Ruby] enumerable methods

silveryen 2022. 7. 27. 10:38

array

       .each

       .each_with_index

months = ["Jan", "Feb", "Mar", "Apr"]

months.each { |month| puts month}
=>
Jan
Feb
Mar
Apr

months.each do |ele|
  puts ele
  puts "----"
end
=>
Jan
----
Feb
----
Mar
----
Apr
----

한줄로 간단히 나타내고 싶을 때 첫번째방법을 쓰면 되고 block을 포함하여 사용하고 싶다면 두번째 버전을 쓰면 된다. 

 

string

       .each_char

       .each_char.with_index

 

sentence = 'Hello, world!'

sentence.each_char do |char|
  puts char
end
-----------------------------
H
e
l
l
o
,
 
w
o
r
l
d
!
months = ["Jan", "Feb", "Mar", "Apr"]


months.each_with_index do |ele, idx|
  puts ele
  puts idx
  puts "----"
  
  ----------------------------------
Jan
0
----
Feb
1
----
Mar
2
----
Apr
3
----
sentence = 'Hello, world!'

sentence.each_char.with_index do |char, idx|
  
  puts char
  puts idx
  puts "-----"
end
-----------------------
H
0
-----
e
1
-----
l
2
-----
l
3
-----
o
4
-----
,
5
-----
 
6
-----
w
7
-----
o
8
-----
r
9
-----
l
10
-----
d
11
-----
!
12
-----

array에서는 . (dot) 이 필요없지만, string 에서는 .(dot)을 빼먹지않고 써야한다.