例如,创建一个容量为3的nsmutableset,但是可以向其中添加3个以上的对象。那么实际容量是多少?

从Apple Docs看来,这还可以,但是“容量”的目的是什么?

返回值可变的集合,其初始容量可容纳numItems
成员。

讨论可变集根据需要分配额外的内存,因此
numItems只是建立对象的初始容量。

最佳答案

实际容量仅受可用内存的限制。初始容量仅使您可以在知道集合的实际或近似大小时避免动态增加集合。这比持续增长集合更有效。

例如,如果您想要一个将字母存储在字符串中的集合(例如,attack = {atck}),则您知道最多有26个不同的字母,因此可以使用初始容量26进行初始化-这是“提示”初始化程序。它可以分配更大或更小的容量。

关于ios - 为什么NSMutableSet可以添加的对象多于容量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27395502/

10-13 09:21