我一直在尝试将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对象存储到数组或可变数组中以便以后检索?
答案 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];