gpt4 book ai didi

ruby 循环。散列成字符串

转载 作者:太空宇宙 更新时间:2023-11-03 18:23:22 24 4
gpt4 key购买 nike

我正在使用 Ruby。我需要获取每个键/值并将其放入一个字符串中。

到目前为止我有:

values = ['first' => '1', 'second' => '2']
@thelink = values.collect do | key, value |
"#{key}=#{value}&"
end

当我打印 @thelink 时,我看到:

first1second2=&

但我真正想要的是

first=1&second=2

有人可以帮忙/解释一下吗?

最佳答案

{}[] 相比,您缺少一些微妙的东西。

请参阅以下来自 IRB 测试的内容:

irb(main):002:0> {'first' => 1, 'second' => 2}
=> {"second"=>2, "first"=>1}

irb(main):003:0> ['first' => 1, 'second' => 2]
=> [{"second"=>2, "first"=>1}]

irb(main):004:0> {'first' => 1, 'second' => 2}.class
=> Hash

irb(main):005:0> ['first' => 1, 'second' => 2].class
=> Array

类似于此:

irb(main):006:0> {'first' => 1, 'second' => 2}.collect { |key,value| puts "#{key}:#{value}" }
second:2
first:1
=> [nil, nil]

irb(main):007:0> ['first' => 1, 'second' => 2].collect { |key,value| puts "#{key}:#{value}" }
second2first1:
=> [nil]

数组有一个元素(散列),作为一个字符串,所有内容都串联在一起。这是这里需要注意的重要事项。
另一方面,哈希通过向您提供您期望的键/值对进行迭代。

希望对您有所帮助。

关于 ruby 循环。散列成字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14565221/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com