我需要分配一个可以有4
个插槽的数组。 (意思是,数组只能存储4
个值)。
我将向此NSArray添加更多内容,并且由于它只能存储4
条记录,因此我最后添加的记录将被删除(First in Last out
)
例如。我将存储值1,2,3,4
。当我添加值5
时,应删除值1
,并且数组应具有以下结构2,3,4,5
。
然后,如果我添加值6
,则值2
将被删除,并具有以下结构3,4,5,6
。
我怎么能这样做?对不起,我无法展示我的工作原因,因为我不知道如何开始这项工作。
答案 0 :(得分:4)
将其设为NSMutableArray
,而不是NSArray
。像这样添加一个对象:
[myArray addObject:object];
删除第一项:
[myArray removeObjectAtIndex:0];
答案 1 :(得分:2)
NSMutableArray *array = [NSMutableArray array];
// assume val is a valid integer
[array addObject:[NSNumber numberWithInteger:val]];
if ([array length] > 4)
{
[array removeObjectAtIndex:0];
}
答案 2 :(得分:0)
在viewDidLoad中:
arrayIndex = o;
在addObjectsInArray中:
-(void)addObjectsInArray:(NSNumber*)number{
if(arrayIndex<4){
[array addObject:number];
arrayIndex++;
}
else{
[array replaceObjectAtIndex:(arrayIndex%4) withObject:number];
arrayIndex++;
}
}