2つの整数の値をXORスワップで交換しました。このために、次のコード行を使用しました。
a ^= (b ^= (a ^= b));
その後、b正しい値(以前の値a)を取得しますが、aゼロになります。1行に書かないと、次のように正常に機能します。
a ^= b;
b ^= a;
a ^= b;
私は何か間違ったことをしていますか、それともnetbeans /compiler / JREが何か間違ったことをしていますか?(netbeans 7.2.1を使用)
2つの整数の値をXORスワップで交換しました。このために、次のコード行を使用しました。
a ^= (b ^= (a ^= b));
その後、b正しい値(以前の値a)を取得しますが、aゼロになります。1行に書かないと、次のように正常に機能します。
a ^= b;
b ^= a;
a ^= b;
私は何か間違ったことをしていますか、それともnetbeans /compiler / JREが何か間違ったことをしていますか?(netbeans 7.2.1を使用)