如何从iOs中的NSMutableArray获取最后一个对象?

时间:2015-12-02 06:37:17

标签: ios objective-c iphone arrays

NSMutableArray * Cars = [NSMutableArray arrayWithObjects:
                          @"Audi", @"BMW",
                          @"Audi Quattro", @"Audi", nil];

如何从NSMutableArray获取最后一个对象? 每次我添加一个新对象时,我想获取NSMutableArray中的最后一个对象。请任何人帮忙。

3 个答案:

答案 0 :(得分:2)

对于最后一个对象:

id lastObject = array.lastObject;

对于倒数第二个对象:

id previousLastObject = array.lastObject;
[array addObject:newObject];

或者

[array addObject:newObject];
id previousLastObject = array[array.count - 2];

答案 1 :(得分:0)

NSMutableArray *car=[[NSMutableArray alloc]init];

car = [NSMutableArray arrayWithObjects:@"Audi", @"BMW",@"Audi Quattro", @"Audi", nil];

int count=(int)[car count];

NSLog(@"Object at second last index %@",[car objectAtIndex:count-2]);

答案 2 :(得分:0)

在这种情况下,我认为使用类别是合理的。

在NSArray类别中,您可以声明以下方法:

@implementation NSArray (Utils)

- (id)getNextToLastObject {
    if (self.count < 2) {
        return nil;
    } else {
        return [self objectAtIndex: self.count - 2];
    }
}
@end

然后可以为项目中的任何数组调用它,例如:

Model *model = [modelArray getNextToLastObject];

ps:您应该将类​​别类的头文件导入到控制器中。