我在核心数据中有一个实体“项目”。 Item有两个属性:name和number。 name是NSString *,number是NSNumber *。我在Core Data建模工具中指定了“Integer 32”作为数字的类型。以下代码正确设置名称,但不设置数字:
Item *item = (Item *) [NSEntityDescription insertNewObjectForEntityForName:@"Item"
inManagedObjectContext:managedObjectContext];
[item setName:@"test name"];
[item setNumber:[NSNumber numberWithInteger:123]];
记录card.name按预期显示“测试名称”。记录card.number显示一个大的随机数。我期待123,因为那是我传给numberWithInteger。
为什么数字属性设置不正确?
一些注意事项:
答案 0 :(得分:0)
这是一个记录问题:
NSLog([NSString stringWithFormat:@"%d", item.number]);
需要
NSLog([NSString stringWithFormat:@"%@", item.number]);
(必须将%d更改为%@)