Reputation: 651
What is the correct syntax to save and retrieve an array of doubles to/from NSUserDefaults please?
I know that I have to wrap it inside an NSObject, but don't exactly know how... Many thanks
Upvotes: 0
Views: 118
Reputation: 3077
NSArray *doubles = @[@(1.0), @(1.2), @(1.5)];
[[NSUserDefaults standardUserDefaults] setObject:doubles forKey:@"myDoublesKey"];
doubles = [[NSUserDefaults standardUserDefaults] objectForKey:@"myDoublesKey"];
Then you can iterate the array of NSNumbers and get back doubles like this:
for (NSNumber *number in doubles) {
double num = [number doubleValue];
}
To get NSNumbers without Objective C's verbose syntax one can do:
double num = 1.2;
NSNumber *number = @(num);
This is the same as:
double num = 1.2;
NSNumber *number = [NSNumber numberWithDouble:1.2];
Upvotes: 3