iOS项目运行出现:[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object

 

说白了就是 字典初始化 的时候 放入空的值了.net

 

下面这个比较具体对象

错误缘由:blog

NSDictionary *dic = @{@"key":value}这个初始化方法,发现keys count和objcects的个数不匹配了, 通常是由于 NSArrayNSDictionary插入数据为空而形成的。it

 

解决方法:io

NSDictionary建立有两种方法,NSDictionary *dic =@{@"xxx":@"xxx"};或者NSDictionary *dic =[NSDictionary dictionaryWithObjectsAndKeys:@"xxx",@"xxx",nil];可是用第一种建立的dic里面的元素必定不能为空,不然就会崩溃。object

在使用@{@”key”:value} 这种方式初始化的时候,必定要对value作是否为nil的判断,为nil就不要加入Dictionary。方法

NSDictionary dictionaryWithObjectsAndKeys:value1,@"v1",value2,@"v2", nil];使用这个初始化方法进行初始化,这样若是value为nil就不会加入字典,使用 objectForKey:取出来的对象就会为nil对象,不会引起崩溃。

原文:https://blog.csdn.net/yuhao309/article/details/80609823

数据

相关文章
相关标签/搜索