Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 数组映射和可枚举映射之间的差异_Arrays_Ruby - Fatal编程技术网

Arrays 数组映射和可枚举映射之间的差异

Arrays 数组映射和可枚举映射之间的差异,arrays,ruby,Arrays,Ruby,Ruby的内置类数组定义了一个方法map: Ruby的内置模块Enumerable还定义了一个方法map: Enumerable模块附加到Array类,所以如果该方法是由Enumerable实现的,为什么要在Array中定义它?性能原因Enumerable不知道数组的最终大小(它以一个空数组开始),并且有调用每个的开销Array确实知道最终的大小,并且可以在没有任何开销的情况下迭代元素。我很确定以前有人问过这个问题(并给出了深入的回答)。我搜索了SO、Google和文档寻找答案,但什么也没找到。

Ruby的内置类数组定义了一个方法
map

Ruby的内置模块Enumerable还定义了一个方法
map


Enumerable模块附加到Array类,所以如果该方法是由Enumerable实现的,为什么要在Array中定义它?

性能原因
Enumerable
不知道数组的最终大小(它以一个空数组开始),并且有调用每个
的开销<另一方面,code>Array
确实知道最终的大小,并且可以在没有任何开销的情况下迭代元素。我很确定以前有人问过这个问题(并给出了深入的回答)。我搜索了SO、Google和文档寻找答案,但什么也没找到。如果你能找到一个我找不到的复制品,请便
Enumerable
不知道数组的最终大小(它以一个空数组开始),并且有调用每个
的开销<另一方面,code>Array
确实知道最终的大小,并且可以在没有任何开销的情况下迭代元素。我很确定以前有人问过这个问题(并给出了深入的回答)。我搜索了SO、Google和文档寻找答案,但什么也没找到。如果你能找到一个我找不到的复制品,请尽管帮我