数组
斯威夫特
得出的结论是,在添加元素时,这些元素的速度非常慢。
我观察这些问题主要是当我在一个应用程序中使用数组时
Dictionary
var array = [String : [String]]
因此,我决定对一个非常简单的
array
使用操场测试,认为问题来自
数组
本身:
var arr = [Int]()
for i in 0..<1_000_000 {
arr.append(i)
}
C级#
带着一个真正的
List
,甚至不需要一点时间
第二
IList list = new List<int>();
for (int i = 0; i < 1000000; i++) {
list.Add(i);
}
我知道Swift中的数组不像其他语言中的列表那样可以灵活地选择
ArrayList
LinkedList
. Swift,每次添加新元素时都会重新分配,基本上会将所有数组放在更大的空间中。
我们怎样才能解决这个问题?
编辑1:
哈米什指出,使用Xcode操场环境是一个糟糕的性能跟踪想法。他是对的,斯威夫特
arrays
当不在操场上使用时,速度和C#一样快。
编辑2:
数组
不是因为
数组
但只有在使用
在字典里