2012-08-12 67 views
0

在CoreData我设置类型:正确的数字格式(CoreData)?

Integer 16 

和插入INT这样的:

[NSNumber numberWithInt:9] 

和问题是,当我从CoreData结果得到的结果是不是9,结果是:114726928

是否和人知道为什么?

+1

看来你认为'NSNumber'的指针是值,但它不是。 – holex 2012-08-12 14:19:11

+0

试试这个:[NSNumber numberWithShort:9]' – Adam 2012-08-12 14:20:38

回答

3

尝试以下操作:

NSInteger number = 9; 
NSNumber *numberObject = [NSNumber numberWithInteger:number]; 
NSInteger numberFromNSNumber = [numberObject integerValue]; // it will contains the 9 

应该罚款。

+0

我得到错误:'NSInteger'(aka'int')到'NSNumber *'的隐式转换不允许使用ARC – CroiOS 2012-08-12 20:59:49

+0

@CroiOS,我没有看到你的代码,但是我的代码没有隐式转换。 – holex 2012-08-12 22:12:02