Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
890 views
in Technique[技术] by (71.8m points)

ios - Trying to populate NSMutableArray but get implicit conversion of int to id is disallowed with arc

I am simply trying to add a series of numbers to an NSMutableArray but I am getting the error:

implicit conversion of int to id is disallowed with arc

resultArray = [[NSMutableArray alloc]init];

for (int i = 0; i <= 9; i++)
{
[resultArray addObject:i];
}

What am I doing wrong?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

An NSArray or NSMutableArray can only hold objects, not primitive data types such as ints. So if you want to add them to the array, you'll have to wrap them in an NSNumber. You can do the following:

[resultArray addObject:@(i)];

This is equivalent to doing:

[resultArray addObject:[NSNumber numberWithInt:i]];

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...