2010-10-22 74 views
0

我怎样才能将这些:如何在Rails 3中创建一个整数数组?

[172592596,93038592,154137572] 

看起来像这些:

['172592596','93038592','154137572'] 
+5

你是说你有一个int数组,想把它变成一个字符串数组?因为这就是你的身体似乎说的,但标题说的是相反的... – sepp2k 2010-10-22 20:51:43

回答

11

如果你想打开的int数组到字符串数组,你可以这样做很容易使用mapto_s

arr = [172592596,93038592,154137572] 
arr.map {|x| x.to_s} 
#=> ["172592596", "93038592", "154137572"] 

由于这是铁轨,你也可以做(也将在平原红宝石工作,如果版本至少为1.8.7):

arr.map(&:to_s) 

要得到相同的结果。

+0

谢谢sepp2k! – 2010-10-22 21:19:39

+0

如何将[“333”,“444”]转换为[{“id”:“333”,“id”:“444”}? – 2010-10-22 21:24:23

+2

@Jonathan:'{“id”:“333”,“id”:“444”}'是语法错误。您不能使用带字符串键的':'语法来使用字符串键。如果你改变它''“id”=>“333”,“id”=>“444”}它仍然不起作用,因为你不能在散列中有重复的键。 – sepp2k 2010-10-22 21:30:22

0

试试这个!

b = [] 
a = [172592596,93038592,154137572] 
a.each {|a1| b << a1.to_s} 
b will return ["172592596", "93038592", "154137572"] 

你也可以用collect!与@ sepp2k建议的地图一样。

a = [172592596,93038592,154137572] 
a.collect! {|x| x.to_s} 
相关问题