我有一个问题: 当我们访问“ objectForKey ”并且密钥不存在时,这将返回 nil 但没有错误/异常,所以问题是在此语句/行之后是执行后,运行时系统是否使用指定的名称创建键并将其设置为 nil 或者虽然 nil 是输出但没有密钥已创建????
答案 0 :(得分:1)
总之:不。
NSDictionary
不可变,objectForKey
是NSDictionary
类的方法。
答案 1 :(得分:1)
不,它不会修改字典。如果密钥不存在,那么它只返回nil值。
要确认这一点,您可以在Xcode中为无效密钥设置断点,并检查字典是否被修改。 (而且NSDictionary是不可变的,即你不能添加/删除对象)
答案 2 :(得分:0)
您可以在执行该行后Log
字典来查看它。
您会看到NSDictionary
是不可变的,它不会修改您的字典。 ;)