jeddi
jeddi

Reputation: 651

How do I save and retrieve an array of doubles to/from NSUserDefaults?

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

Answers (1)

jervine10
jervine10

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

Related Questions