【问题标题】:Comparing data from NSNumber CoreData iOS [duplicate]比较来自 NSNumber CoreData iOS 的数据 [重复]
【发布时间】:2014-05-27 16:08:41
【问题描述】:
我在 CoreData 中有一个
@property (nonatomic, retain) NSNumber * hidden;
这是布尔值。我正在尝试使用以下代码
[object valueForKey:@"hidden"]
如何比较返回的值,以使用它
if()
if ([[object valueForKey:@"hidden"] isEqualToString:@"1"])
不工作
【问题讨论】:
标签:
ios
objective-c
core-data
nsnumber
【解决方案1】:
您可以使用[[object valueForKey:@"hidden"] boolValue] 查询NSNumber 的布尔值,这样您就可以进行正确的布尔处理。
【解决方案2】:
如果您想将其视为 BOOL 的 NSNumber,请使用...
NSNumber *hidden = [object valueForKey:@"hidden"];
if (hidden.boolValue)
【解决方案3】:
如果您的属性“隐藏”是 NSNumber,则它不是字符串。试试这个:
if([[object valueForKey: @"hidden"] isEqualToNumber: [NSNumber numberWithBool:true]])
【解决方案4】:
BOOL isOnOrOff = [myEntity.onOrOff boolValue];