-1
このコードはゼロ除算例外を生成しませんか? precedence rulesによるとなぜこのif文は失敗しますか?
public class Testing {
public static void main(String[] args) {
if(6 > 5 || 5/0 == 0)
System.out.println("true");
}
}
は5/0
は6 > 5
前に実行されませんでしたので、私はこのコードはゼロ例外によってによる除算に失敗するだろうという印象の下にいます。
私はJavaショートサーキットifステートメントを認識しています。したがって、最初のものが真であれば、2番目のものをチェックすることなく真と評価されます。
しかし、これらの優先ルールによって、5/0
が最初に実行されるように見えるのですか?
も参照してください。http://stackoverflow.com/questions/6800590/what-are-the-rules-for-evaluation-order-in-java – Tunaki
"優先ルールに従って、5/0は実行されません6> 5 "の優先ルールの前に、あなたはそう思うでしょうか? – Pshemo
if文が左から右に評価されます –