Tôi sử dụng [NSNumber numberWithInt:42]
hoặc @(42)
để chuyển đổi một int thành NSNumber trước khi thêm nó vào NSDictionary:
int intValue = 42;
NSNumber *numberValue = [NSNumber numberWithInt:intValue];
NSDictionary *dict = @{ @"integer" : numberValue };
Khi tôi lấy giá trị từ NSDictionary, làm cách nào để chuyển đổi giá trị đó từ NSNumber trở lại int?
NSNumber *number = dict[@"integer"];
int *intNumber = // ...?
Nó ném ra một ngoại lệ nói rằng truyền là bắt buộc khi tôi làm theo cách này:
int number = (int)dict[@"integer"];