= 是赋值运算符,他的作用是把右边的数据赋值给左边的变量
== 是逻辑(关系)运算符,用来判断左边和右边的数据是否相等,得出的结果是Boolean型,要么true,要么false
你提供的这连个if语句中,
第一个语句 Boolean型变量b首先被初始化为 true,往下执行,先判断 true==false,(判断true是否和false相等,)这明显是false,所以跳过这循环体,走到下面的第一个else if中,因为,b 初始化的时候已经赋值为true所以这个语句成立,然后就执行该语句对应的输出语句,输出结果为b
而第二个语句中,b在第一个if语句中,被赋值,新的值为false,也就是说,此处的if(b=false )实际上就是 if (false),明显不会执行这个循环体,会跳到下面的else if ,第一个else if语句,相当于是,else if(false),因为false,所以也不会执行他对应的循环体,继续往下走,到第二个else if,此处相当于 else if ( ! false ),也就是 else if ( true ),这里是true,就会执行他对应的循环体,所以输出结果为C |