关于if语句中判断多个bool值问题
bool rule1 = true, rule2 = false, rule3 = false;
if (rule1 == rule2 == rule3 ==true)
Console.Write(rule1+" "+rule2+ " "+rule3);
程序执行if中的语句
bool rule1 = false, rule2 = true, rule3 = false;
if (rule1 == rule2 == rule3 ==false)
Console.Write(rule1+" "+rule2+ " "+rule3);
程序不执行if中的语句
经过多次测试,我发现: if (rule1 == rule2 == rule3 ==true) 只要有一个rule的值为true,程序就执行if语句
if (rule1 == rule2 == rule3 ==false) 必须全部rule的值为false,程序才执行if语句
这个是为什么啊?有点想不通?是编译器错误的执行吗,还是有其他说法?