Convert an array of integers into an array of strings in Ruby?
Solution 1:
str_array = int_array.map(&:to_s)
Solution 2:
str_array = int_array.collect{|i| i.to_s}
Solution 3:
array.map(&:to_s) => array of integers into an array of strings
array.map(&:to_i) => array of strings into an array of integers
Solution 4:
map and collect functions will work the same here.
int_array = [1, 2, 3]
str_array = int_array.map { |i| i.to_s }
=> str_array = ['1', '2', '3']
You can acheive this with one line:
array = [1, 2, 3]
array.map! { |i| i.to_s }
and you can use a really cool shortcut for proc: (https://stackoverflow.com/a/1961118/2257912)
array = [1, 2, 3]
array.map!(&:to_s)
Solution 5:
Start up irb
irb(main):001:0> int_array = [11,12]
=> [11, 12]
irb(main):002:0> str_array = int_array.collect{|i| i.to_s}
=> ["11", "12"]
Your problem is probably somewhere else. Perhaps a scope confusion?