我正在从plist中读取一堆NSNumber值,代码I中的第一行显示stoneOne值为2 [@" Column"]。当我为' c'设置断点时在第二行,并检查[c intValue],c是正确的int 2.但是,当我分析NSInteger列的值时,值为528839664.这有什么原因?我不应该得到c的intValue吗?有必要吗? (我想将NSNumber值转换为可读的NSInteger值,你必须调用该方法)。
NSNumber* c = stoneOne[@"Column"];
NSInteger column = [c intValue];
答案 0 :(得分:1)
好的,有两件事。
正如Eiko指出的那样,你需要转到下一行,以确保执行...
之类的任务。只需前进一步,或将断点放在它下面的行中。
其次,使用$a = array('a', 'b');
$b = array('c', 'd');
array_push($a, ...$b);
// $a is now equals to array('a','b','c','d');
以最佳方式转换为NSInteger。