需要从NSArray或NSMutableArray存储/检索对象

时间:2012-09-13 00:46:23

标签: ios nsmutablearray nsarray

我一直在尝试将NSDate对象存储到NSMutableArray中,然后稍后检索它(以获取已用时间)。

这是我尝试过的,用于可变数组初始化和存储:

<。>文件中的

@property (nonatomic, strong) NSMutableArray *startTime;

在实现(.m)文件中:

@synthesize startTime = _startTime;

// init the mutable array - create some temporary elements as placeholders

NSDate *temp = [NSDate date];

for (int i = 0; i < 3; i++) {
    [self.startTime addObject:temp];
}

这是什么不起作用:

[self.startTime replaceObjectAtIndex:iurl withObject:[NSDate date]]; //iurl is an NSUInteger

NSDate *now = [self.startTime objectAtIndex:iurl];

NSLog(@"Now = %@", now);

我想做的只是a)在索引处存储NSDate对象(此处为NSUInteger iurl),然后b)检索并访问该对象。在上面的代码中,现在总是(null)。如何将NSDate对象存储到数组或可变数组中以便以后检索?

1 个答案:

答案 0 :(得分:2)

你忘了实际初始化你的数组,这就是为什么它的null。

在初始化日期对象之前添加self.startTime = [NSMutableArray array];

这会将self.startTime初始化为一个空数组,这将允许您向其添加对象。

self.startTime = [NSMutableArray array];
NSDate *temp = [NSDate date];

// Now you can add temp to self.startTime
[self.startTime addObject:temp];

// Since temp is the only object in your array so far, its index is 0.
NSDate *now = [self.startTime objectAtIndex:0];
相关问题