【发布时间】:2017-05-15 15:56:06
【问题描述】:
我有一个包含大量数据的字符串数组,其中只有一些我想要。我使用如下分隔符分隔好的数据:
var result = contentArray[1].components(separatedBy: ",")
这会在结果数组的偶数索引中留下垃圾数据,在奇数索引中留下好的数据。
现在我只想使用好的数据来简化以后的工作。我可以通过使用 for in 循环创建另一个数组来实现这一点...
但这似乎至少是一个额外的步骤。有没有一种方法可以在不创建 2 个数组的情况下对第一个数组中的数据进行排序?当看起来我应该能够在 1 或 2 中完成时,这将使应用程序创建 3 个包含大量数据的数组。我计划使用至少 20 个数据集来执行此操作,这样看起来就多了很多内存中的数组
【问题讨论】:
-
为什么要过早优化?我的建议是先让它工作,运行一些性能测试,并仅在需要时进行优化。
-
@nathan 好点。我确实倾向于在早期有点烦恼。为什么我不需要做额外的工作?辉煌
-
请记住,大多数基本 Swift 类型都是复制时变异的。如果您不更改实际数据,您可能只是进行了额外的引用(占用空间小),而不是实际复制所有数据。
标签: arrays swift for-loop stride