本文介绍了为什么不each_slice工作?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想使用可枚举#each_slice。它不会在我的电脑上工作,指出方法是找不到的。
I am trying to use the Enumerable#each_slice. It doesn't work on my computer, stating that method is not found.
我运行红宝石1.8.6(2008-08-11补丁级别287)万向darwin9.0]
I am running ruby 1.8.6 (2008-08-11 patchlevel 287) [universal-darwin9.0]
API:
例如:
(1..10).each_slice(3) {|a| p a} # I get NoMethodError: undefined method `each_slice' for 1..10:Range
我在做什么错了?
What am I doing wrong?
推荐答案
在红宝石1.8.6,你必须要求枚举
(这是STDLIB的组成部分,使用each_slice之前被合并到1.8.7+核心)。
In ruby 1.8.6 you have to require 'enumerator'
(which is part of stdlib and has been merged into core in 1.8.7+) before using each_slice.
可悲的是由STDLIB加入到核心类不提,其中的方法是从红宝石文档列表的方法。
Sadly the ruby-doc lists methods that are added to core classes by stdlib without mentioning where the methods are from.
这篇关于为什么不each_slice工作?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!