我真的很困惑这个问题,我有一个方法返回boolean - mainMethod(),所以我在逻辑表达式中使用结果,请看这里:
boolean b = this.someMethod();
b = b && this.mainMethod(); // method is not called
Run Code Online (Sandbox Code Playgroud)
我通过反编译器检查了jar文件,一切正常.然后我将上面的行改为:
boolean b = this.someMethod();
boolean result = this.mainMethod(); // now method is called!!!
b = b && result;
Run Code Online (Sandbox Code Playgroud)
有没有人知道这会怎么样?我不知道,这看起来很奇怪.
如果this.someMethod()回报false然后this.mainMethod()将永远不会被调用引起的短路性质&&的声明运营商
b = b && this.mainMethod();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
33 次 |
| 最近记录: |