int random=0;
int counter=0;
while(counter<25)
{
random=arc4random() % 40;
BOOL flag=[array containsObject:[NSNumber numberWithInt:random] ];
if(flag)
{
counter--;
}
else
{
[array addObject:[NSNumber numberWithInt:random]];
int p=[array objectAtIndex:counter]; //**line4
counter++;
}
}
在第4行收到警告,无法将数组对象的值赋给变量,请帮帮我 感谢
答案 0 :(得分:1)
-objectAtIndex:
返回一个对象 - 在您的情况下,返回NSNumber
的实例。要将其转换为int
,请使用-intValue
方法。例如,替换
int p=[array objectAtIndex:counter];
与
int p=[[array objectAtIndex:counter] intValue];
答案 1 :(得分:0)
你必须做类型转换Nsnumber到int.For转换你可以使用IntValue metod.for了解更多关于基础数据类型使用apple的文档。