說白了就是 字典初始化 的時候 放入空的值了
下面這個比較具體
錯誤原因:
NSDictionary *dic = @{@"key":value}這個初始化方法,發現keys count和objcects的個數不匹配了, 一般是因為 NSArrayNSDictionary插入數據為空而造成的。
解決方法:
NSDictionary創建有兩種方法,NSDictionary *dic =@{@"xxx":@"xxx"};或者NSDictionary *dic =[NSDictionary dictionaryWithObjectsAndKeys:@"xxx",@"xxx",nil];但是用第一種創建的dic里面的元素一定不能為空,否則就會崩潰。
在使用@{@”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