4th*_*ace 40 iphone objective-c
为什么这不起作用:
NSInteger temp = 20;
[userSettingsFromFile setObject:temp forKey:@"aTemp"];
Run Code Online (Sandbox Code Playgroud)
但这样做:
[userSettingsFromFile setObject:@"someObject" forKey:@"aTemp"];
Run Code Online (Sandbox Code Playgroud)
我该如何使用NSInteger变量?
Mat*_*all 93
NSInteger不是一个对象 - 它只是int在32位或long64位上进行类型转换.由于NSDictionary只能存储对象,因此需要先将整数包装到对象中,然后才能存储它.试试这个:
NSInteger temp = 20;
[userSettingsFromFile setObject:[NSNumber numberWithInteger:temp]
forKey:@"aTemp"];
Run Code Online (Sandbox Code Playgroud)
为了在集合中存储数字,您必须将它们包装在一个NSNumber实例中.
double aDouble = 20.3d;
NSInteger anInt = 20;
NSNumber *aWrappedDouble = [NSNumber numberWithDouble:aDouble];
NSNumber *aWrappedInt = [NSNumber numberWithInteger:anInt];
NSArray *anArray = [NSArray arrayWithObjects:aWrappedDouble, aWrappedInt, nil];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
34443 次 |
| 最近记录: |