-1

私はこの投稿を読んでいました。最初の条件が false の場合、なぜ誰かが 2 番目の条件をテストしようとするのか疑問に思っています。

例えば:

boolean a =false;
if(a && b) //do soemthing

b が false かどうかをテストするのはなぜですか?

4

5 に答える 5

0

たとえば、最初の値が何であるかに関係なく、起動したい何かを行う関数がある場合、それは理にかなっています。

if( a & _checkForB())
于 2013-04-04T15:02:59.480 に答える
0

私が考えることができる唯一のケースは、2番目の評価が望ましい副作用を持っている場合です。

于 2013-04-04T15:03:18.310 に答える
0

これが実際の使い方かどうかはわかりませんが、コードのアクロバットなどを行う場合があります。

string s;
if((s = reader.read()))
{
    doStuff
}

&そして、あなたの状態で何かをしたことが複数ある場合は、を使用できると思います。

于 2013-04-04T15:03:34.810 に答える
0

b が false かどうかをテストするのはなぜですか?

私はあなたが意味すると思います:

aがfalseの場合、なぜbをテストするのですか?

たとえば、b に副作用がある場合。この場合、おそらく設計上の問題がありますが。

実際には、おそらく「&=」を除いて、「&」はブール値には使用されません。

于 2013-04-04T15:05:27.743 に答える