gpt4 book ai didi

ruby - 尝试将字符串转换为符号

转载 作者:数据小太阳 更新时间:2023-10-29 08:23:10 25 4
gpt4 key购买 nike

这会创建一个无限循环,我不知道为什么会这样。当我不使用 push 命令时,循环不会发生。

#strings = ["HTML", "CSS", "JavaScript", "Python", "Ruby"]
symbols = [ "a", "b", "c" ]
symbols.each do |x|
symbols.push(x.to_sym)
end

最佳答案

以下代码将项目附加到symbols 数组(同一数组),同时迭代它;该 block 通过附加到数组来提供无限项。 (each 使用这些项目进行迭代)

symbols.each do |x| symbols.push(x.to_sym) end
#^^^^^^ ^^^^^^^

使用Enumerable#map相反:

symbols.map { |x| x.to_sym }
# => [:a, :b, :c]
symbols.map &:to_sym
# => [:a, :b, :c]

或者使用另一个数组而不是使用相同的数组。

new_symbols = []
symbols.each do |x| new_symbols.push(x.to_sym) end
new_symbols
# => [:a, :b, :c]

关于ruby - 尝试将字符串转换为符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21201589/

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