gpt4 book ai didi

ruby - 加入可枚举以在 Ruby 中生成字符串

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

Ruby 数组具有 #join 方法,该方法通过连接数组元素并添加可选分隔符来生成字符串。

其他可枚举类型(例如范围)没有相同的方法。

您可以使用 #inject 模拟行为,例如

('a'..'z').inject('') do |acc, s| 
if acc.empty?
s
else
acc << ' some separator ' << s.to_s
end
end

有没有更好的方式加入枚举? #join 是否因特殊原因被省略?

编辑:

我会担心的一件事是将大量可枚举对象复制到数组中。当然,这很少是一个用例,但仍然如此。例如:

(1 .. 1_000_000_000_000_000).to_a.join

因此,我对不需要生成包含所有值的数组作为中间步骤的解决方案特别感兴趣。

最佳答案

使用Array#join :

('a'..'z').to_a.join(' some separator ')

或者(效果相同):

[*'a'..'z'].join(' some separator ')

关于ruby - 加入可枚举以在 Ruby 中生成字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52328770/

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