排序红宝石中的数字

吉尔448

我试图通过无法排序以下代码

@image_tags_cache['imagetags'].each do |tag|
puts #{tag}

它打印以下内容

57
224_90_345.09.1.0
55
124_90_345.09.1.0

但是当我尝试排序时,出现错误

@image_tags_cache['imagetags'].sort.each do |tag|

ArgumentError-比较NilClass与String失败:

@image_tags_cache['imagetags'].to_i.sort.each do |tag|

NoMethodError-#的未定义方法`to_i'是您的意思吗?to_s to_a to_h:

@image_tags_cache['imagetags'].to_s.sort.each do |tag|

NoMethodError-#String:0x00007f993c0c1c50>的未定义方法`sort':

斯派克曼

似乎@image_tags_cache['imagetags']包含nil值。调用to_i可能没有什么意义,因为这将转化nil00值也会被打印出来。

我建议改为nil通过首先调用compact数组来删除

@image_tags_cache['imagetags'].compact.sort.each do |tag|
  puts tag
end

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章