NSMutableDictionary * dictionary = @ {}。mutableCopy VS NSMutableDictionary * dictionary = [NSMutableDictonary new]

时间:2016-12-28 05:52:35

标签: objective-c xcode

我只是想知道这两者之间的区别,我已经搜索过但在这方面找不到任何内容,这里有什么机构可以帮忙吗?

NSMutableDictionary* dictionary = @{}.mutableCopy 

VS

NSMutableDictionary * dictionary = [NSMutableDictonary new]

1 个答案:

答案 0 :(得分:3)

第一个创建NSDictionary实例并向其发送mutableCopy方法,生成NSMutableDictionary个实例。

第二个直接创建NSMutableDictionary实例。顺便说一下,我更喜欢第二种方式:)

正如@Itai Ferber所说:

  

@ {}没有构建新的NSDictionary实例,它重用单例。

这是实施细节但是没错,您可以使用以下代码进行测试:

NSLog(@"%p, %p", @{}, @{});

它将打印相同的地址。