我有一个简单的代码,它将遍历整数数组,但是当我尝试使用"for in"循环时,它说我需要有一个对象,所以我使用了NSNumber,但为了让我的代码工作,它必须是一个int,所以在循环之后,我让它将NSNumber转换为int。 它给了我另一个错误,说我需要声明变量 _strong 才能工作,所以我这样做了,但现在它给了我这些错误:"指向整数转换的不兼容指针将'NSNumber *_strong'发送到类型为'int'的参数"和"ARC 不允许将'int'隐式转换为'NSNumber *'" 以下是给出错误的代码:
for(__strong NSNumber *i in factors) {
i = [i intValue];
你已经将"i
"声明为目标C对象(特别是NSNumber对象)。
如果要进行转换,请声明一个单独的不同变量,例如
int j;
并将整数设置为该整数,例如:
j = [i intValue];