プロが教える店舗&オフィスのセキュリティ対策術

下記のようなjavaコードがあります。
int mode = 1;
if (true) mode|= 2;
System.out.println(mode);
これを実行すると結果は3になりますが、
ここで「|」とは何でしょうか?
恥ずかしいですが、
javaを1年半くらいやってきましたけど
こんな演算子初めて見ます。
結果からみると
「mode|= 2」が「mode+= 2」と同じになりますが、
「+=」と「|=」は同じものでしょうか?

A 回答 (3件)

>「+=」と「|=」は同じものでしょうか?


違います。
2 | 1 = 3ですが
2 | 2 = 2です。

「論理和」で調べてください。
http://www.info.kochi-tech.ac.jp/ren/addLab2/bit …
    • good
    • 0
この回答へのお礼

ありがとうございます。解決しました。

お礼日時:2006/03/08 16:25

#1です。


>ビット演算子ではないでしょうか?
ですね。失礼しました。時々間違えちゃう…
論理演算子なら
「||」ですね。
    • good
    • 0
この回答へのお礼

ありがとうございます。解決しました。

お礼日時:2006/03/08 16:26

論理演算子のorですね。

この回答への補足

ビット演算子ではないでしょうか?
つまり、
「mode |=2 」= 「mode = mode|2」
ではないでしょうか?

補足日時:2006/03/08 16:01
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!