ruby - .downto() 方法似乎无法在字符串上调用

标签 ruby

.downto() 方法是否适用于字符串?我的这段代码似乎带来了一个错误,比如 undefined method 'downto' for "Z":String (NoMethodError)

代码如下:

"Z".downto("A") do |x|
  puts x
end

最佳答案

没有。 Integer#downto只能用于 Integer 对象。

但是,您可以通过创建 Range 来实现您想要的效果- 如下:

("A".."Z").reverse_each do |x|
  puts x
end

请注意,使用 Enumerable#reverse_each是这里的最佳实践,因为您在循环数据之前没有创建其他对象。也就是说,下面的代码也有效,但速度较慢:

("A".."Z").to_a.reverse.each do |x|
  puts x
end

关于ruby - .downto() 方法似乎无法在字符串上调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38785065/

相关文章:

ruby-on-rails - 使用 Koala 将图片发布到 Facebook 群组

ruby-on-rails - rails 形式的隐藏字段

ruby - 匹配没有空格的单词,并且必须包含单词的某些开头

ruby-on-rails - redis 数据库的大小(2N 或 N^2)

ruby - 整数数组到范围数组

ruby - 严格验证自定义异常不起作用

ruby-on-rails - 使用 net-ldap 从 AD 组中删除成员

ruby - Camping 的 URL() 没有按预期给我 "site root"?

ruby - 在 Sinatra 中处理 POSTDATA

ruby-on-rails - 检测哪些 Sidekiq 作业导致高内存使用率