ฉันใช้[NSNumber numberWithInt:42]
หรือ@(42)
เพื่อแปลง int เป็น NSNumber ก่อนที่จะเพิ่มลงใน NSDictionary:
int intValue = 42;
NSNumber *numberValue = [NSNumber numberWithInt:intValue];
NSDictionary *dict = @{ @"integer" : numberValue };
เมื่อฉันดึงค่าจาก NSDictionary ฉันจะแปลงค่าจาก NSNumber กลับเป็น int ได้อย่างไร
NSNumber *number = dict[@"integer"];
int *intNumber = // ...?
มันมีข้อยกเว้นว่าต้องมีการแคสต์เมื่อฉันทำแบบนี้:
int number = (int)dict[@"integer"];