1

のようだ

! 

ブールオペランドに使用されます

~

整数型に対してビットごとの否定を行うために使用されます。

!整数型でも動作するようにオーバーロードしないのはなぜですか?

「仕様がそう言っている」よりも深い理由があると思います

たとえば&、整数型とブール型の両方を問題なく処理するためにオーバーロードされます。

4

1 に答える 1

6

考えられる理由 (純粋な憶測を読む)。

Java は c と c++ の後に登場しました。

C/C++ で! on integers は、ビットごとの否定ではない意味を持ちます。

Java 開発者は、c/c++ から Java への変換を難しくしたくありませんでした。

于 2013-09-19T17:09:48.510 に答える