希望将这个ruby代码写在一行中

时间:2016-06-12 11:22:05

标签: ruby

我想在这样的字符串中显示我的哈希:

The results are a=100, b=200

当我像这样循环哈希时:

a = [{:a => 100}, {:b => 200}]
a.each do |x|
  x.each do |k,v|
    puts "#{k}=#{v}"
  end
end

输出以多行返回字符串

a=100
b=200

如何将其更改为一个字符串?

2 个答案:

答案 0 :(得分:1)

我能够使用此

puts a.map{|x|x.map{|k,v|"#{k}=#{v}"}}.join(',')

不确定它是否是最佳解决方案。

答案 1 :(得分:-2)

{:a => 100, :b => 200}.each { |k,v| puts "#{k}=#{v}" }