NSDictionary的keys是有序的吗
时间: 2024-04-25 08:26:25 浏览: 251
在 iOS 11 之前,NSDictionary 的 keys 是无序的。也就是说,如果你遍历一个 NSDictionary 中的 keys,你不能保证它们的顺序和你添加它们的顺序是一致的。
从 iOS 11 开始,NSDictionary 的 keys 会按照它们被添加的顺序进行排序。这个改变是由于 Apple 引入了一种新的哈希算法,它能够保证 NSDictionary 的 keys 的顺序。
需要注意的是,虽然 NSDictionary 的 keys 是有序的,但是它们并不一定是按照它们的值进行排序的。而是按照它们在哈希表中的位置进行排序的。因此,如果你需要按照 key 的值进行排序,你应该使用 NSArray 中的 sortedArrayUsingComparator: 方法进行排序。
阅读全文