Ios Can';t比较if语句中的值
我是ios新手。我想检查语句是否为真,但这个条件每次都为真,即使它为假Ios Can';t比较if语句中的值,ios,objective-c,Ios,Objective C,我是ios新手。我想检查语句是否为真,但这个条件每次都为真,即使它为假 NSMutableArray *passengers=loginObj.passengers; PassengerObj *passenger=[passengers objectAtIndex:0]; if([[passenger checkedIn] objectAtIndex:0]) { [somestatement]; } 在调试器中 _checkedIn __NSCFA
NSMutableArray *passengers=loginObj.passengers;
PassengerObj *passenger=[passengers objectAtIndex:0];
if([[passenger checkedIn] objectAtIndex:0])
{
[somestatement];
}
在调试器中
_checkedIn __NSCFArray * @"1 object" 0x168b8200
>[0] __NSCFBoolean * @"0" 0x37e696d4
假设数组仅包含包含1或0的字符串,则可以比较该字符串:
if ([[[passenger checkedIn] objectAtIndex:0] isEqualToString:@"0"])
当然,如果有一个NSNumber
s数组并使用
if ([[[passenger checkedIn] objectAtIndex:0] boolValue])
假设数组仅包含包含1或0的字符串,则可以比较该字符串:
if ([[[passenger checkedIn] objectAtIndex:0] isEqualToString:@"0"])
当然,如果有一个NSNumber
s数组并使用
if ([[[passenger checkedIn] objectAtIndex:0] boolValue])
我相信
@“0”
的计算结果是真的
,因为它不是零
。但是如何正确地做呢?对象总是@“0”
还是@“1”
?我相信@“0”
的计算结果是真的
,因为它不是零
。但是如何正确地做呢?对象总是@“0”吗
或@“1”
?例如,右键clic If语句的内容,将其提取为返回bool的方法,并将其称为IsPassenderCheckedIn
,这将更具可读性。这是我喜欢用我的“复杂”或长if语句做的事情;例如,右键clic If语句的内容,将其提取为返回bool的方法,并将其称为IsPassenderCheckedIn
。这是我喜欢用我的“复杂”或长if语句做的事情;从那以后,它读起来就像散文。