Convert an array of integers into an array of strings in Ruby?

后端 未结 7 1013
野的像风
野的像风 2020-12-12 18:47

I have an array:

int_array = [11,12]

I need to convert it into

str_array = [\'11\',\'12\']

I\'m new to t

相关标签:
7条回答
  • 2020-12-12 19:23

    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?

    0 讨论(0)
  • 2020-12-12 19:34

    the shortest option:

    int_array.map!(&:to_s)
    
    0 讨论(0)
  • 2020-12-12 19:37

    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)
    
    0 讨论(0)
  • 2020-12-12 19:38
    str_array = int_array.map(&:to_s)
    
    0 讨论(0)
  • 2020-12-12 19:38

    Returns Int

    x = [1,2,3,4,5,6,7,8,9,10] # => [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    

    Returns String

    y = 1,2,3,4,5 # => ["1", "2", "3", "4", "5"]
    
    0 讨论(0)
  • 2020-12-12 19:39

    array.map(&:to_s) => array of integers into an array of strings

    array.map(&:to_i) => array of strings into an array of integers

    0 讨论(0)
提交回复
热议问题