System.out.println((3 + 7 + 10)*(1000-8)/ 992-17)20ではなく3を出力しますか?
操作の順序。最初に括弧を評価して(20)*(992)/ 992-17を取得します。次に、左から右に乗算と除算を行って20-17を取得します。最後に、減算して3を取得します。
System.out.println(2.0 + 1.0 / 2 + 1.0 / 6 + 1.0 / 24 + 1.0 / 120)は、2.716666667ではなく2.7166666666666663を出力しますか?
浮動小数点演算。Stack Overflowには、浮動小数点演算に関する多くの質問があります。Googleですばやく検索すると、おそらくこれまでにないほど多くの質問が表示されます。ただし、ウィキペディアの記事は良いスタートかもしれません。
System.out.println(2147483647 + 1)は、2147483648ではなく-2147483648を印刷しますか?
オーバーフロー。Javaでの整数の最大値は、2^31-1または2,147,483,647です。その値に1を追加すると、表示されている値にラップアラウンドします。これは、2秒の補数を使用した値のバイナリ表現と関係があります。