斯威夫特获得拖尾子阵

时间:2016-06-10 18:55:23

标签: arrays swift

Swift的数组实现再次让我失去了一个循环! (Haw,haw。)我想要的是获取一个任意长度的数组并从中获取一个新数组(或数组切片),其中第一个元素已被删除。

为什么这么难?

我只是希望能够做到这样的事情:

let suffix = someArray.suffixFrom(1)

但我无法弄清楚如何做到这一点。似乎我发现的最接近的方法需要知道数组的长度,我不知道因为它是内联计算的,我真的很讨厌将这样一个简单的概念拆分成一堆变量和行。

精化:

我有一个用冒号(:)拆分的字符串,我只想创建一个Set,其中包含除第一个之外的所有: - delimited组件。

因此字符串“one:two:three”将返回包含[“two”,“three”]的集合。因为我可以从数组创建一个Set,所以我真正需要的是得到数组的后缀,但我不知道有多少组件,因为它是内联的:

return Set(attributeName?.componentsSeparatedByString(":").suffixFrom(1))

为什么Swift如此努力?

编辑:在你提出建议之前,我很清楚我可以扩展数组类来自己做,但我正在编写一个框架,我不想做到这一点,我也不想写一个血腥的实用函数来做一些简单的事情。

1 个答案:

答案 0 :(得分:2)

http://jsonapi.org/format/#fetching-pagination完全符合您的需要,并提供您正在寻找的确切语法。

let suffix = someArray.dropFirst(1)