誰かがこのコード出力がなぜであるかを説明できますか
not equals
not equals 2
最初の if ステートメントでは、a = 0 b/c が後置インクリメントのようです。したがって、a は次の行まで増加しません。しかし、2 つの a が等しくないのはなぜですか? 2番目に、デバッガーを実行したときにaの値が2であるのに、テストが偽である場合、なぜですか?
public static void main (String[] args)
{
int a = 0;
if (a++ == a++) {
System.out.println("equals");
} else {
System.out.println("not equals");
}
if (++a == 2) {
System.out.println("equals 2");
} else {
System.out.println("not equals 2");
}
}