首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么Ruby数组切片有时返回零,有时返回空数组?

为什么Ruby数组切片有时返回零,有时返回空数组?
EN

Stack Overflow用户
提问于 2017-01-06 19:26:53
回答 1查看 707关注 0票数 2

我在做红宝石考恩的时候有这个问题。给定这个数组:

代码语言:javascript
运行
复制
array = [1, 2, 3, 4]

array[4, 0]等于[]。然而,array[5, 0]等于nil

4和5都超出了指数。他们为什么要归还不同的东西?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-06 19:32:12

Array#slice(开始,长度)的第一个参数是索引()之间的位置(),切片应该从这里开始:

代码语言:javascript
运行
复制
array = [1, 2, 3, 4]
# elements            : [   1   2   3   4   ]
#                         ↑   ↑   ↑   ↑   ↑
# slice start indices :   0   1   2   3   4

slice(0,_)1的左边开始,slice(3,_)4的左边开始,slice(4,_)从最后一个可能的位置开始:4的右边。

slice(4,0)仍然在array中,它是4的空数组。

slice(5,0)已经不在array里面了,它是nil

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41512884

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档