在逻辑运算中会发生强制类型转换,这点是大家都很熟悉的,但具体进行了怎样的转换,之前我却有点模糊,对于这个概念今天可以来说一下。
首先是与运算符,从左到右看的时候,如果第一个变量已经可以转换为true,那么就直接输出第二个变量,因为第一个变量已经为true,圆满完成了自身的任务,整体是否为true就看第二个变量了。
而当第一个变量转换为false时,这一组东西当然就直接崩了,后面第二个变量无论怎么样都救不回来了。所以直接输出第一个变量,第二个变量都不用看。
而对于或运算来说,如果第一个已经转为true,那整体肯定为true,第二个都不用看了,所以直接输出第一个变量。如果第一个变量转为了false,已经挂了,那整一组是true还是false,就完全取决于第二个变量了,所以直接输出第二个变量。