切片

如果要提取数组的子集(即 numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]),可以使用以下示例之一轻松完成此操作:

  • numbers[0..2] 将返回 [1, 2, 3]
  • numbers[3...-2] 将返回 [3, 4, 5, 6]
  • numbers[-2..] 将返回 [8, 9]
  • numbers[..] 将返回 [1, 2, 3, 4, 5, 6, 7, 8, 9]

有两个点(3..6),范围包括 [3, 4, 5, 6]
有三个点(3 … 6),范围不包括结尾 [3, 4, 5]
- 添加到范围将在数组末尾开始计数
省略第一个索引默认为零
省略的第二个索引默认为数组的大小

可以使用相同的语法进行赋值,以使用新值替换数组的一个段

numbers[3..6] = [-3, -4, -5, -6]

上面的行将用以下代码替换数字数组:[1, 2, -3, -4, -5, -6, 7, 8, 9]