我有这样的数组:
a = [27624,
22,
33,
"ema",
"test",
11,
nil]
当我a.join(',')
时,我得到一个带有值的bing字符串。我怎样才能获得相同的效果,但仅限于我的字符串以保留其类型。输出应如下所示:
"27624, 22, 33, 'ema', 'test', 11"
答案 0 :(得分:5)
a.map{|e| e.is_a?(String) ? "'#{e}'" : e}.join(',')
或者:(这可能并不总是具有预期效果 - 特别是nil
,以及此处未包含的其他类型)
a.map(&:inspect).join(',')