我是一位经验丰富的程序员,所以这种神秘的行为对我来说完全是个谜。
我有一个简单的if
-statement,只有在两个布尔变量正好是false
. 但是,if
当只有其中一个是 时,出于某种原因输入了 - 语句false
。
我的代码如下所示:
BOOL connected = [self connected];
NSLog(@"Connected to the internet: %@", connected ? @"YES" : @"NO");
BOOL notConnectedMessageShown = ((FOLDAppDelegate *)[[UIApplication sharedApplication] delegate]).notConnectedMessageShown;
NSLog(@"notConnectedMessageShown: %@", notConnectedMessageShown ? @"YES" : @"NO");
if (!connected && !notConnectedMessageShown);
{
NSLog(@"Entering if statement");
}
并NSLog
打印以下内容:
"Connected to the internet: YES"
"notConnectedMessageShown: NO"
"Entering if statement"
我真的不明白。既然第一个变量在第一位,那么根据我的编程技能应该跳过true
整个-语句吗?if
有谁知道这里发生了什么?