public class Main {
public static void main(String[] args) {
int j = + -1234;
System.out.printf("%d", j);
System.out.println();
System.out.println(j);
}
}
結果は-1234です。 なぜ結果が-1234になるのか私の体は説明できますか?Javaデータ型に関する質問
public class Main {
public static void main(String[] args) {
int j = + -1234;
System.out.printf("%d", j);
System.out.println();
System.out.println(j);
}
}
結果は-1234です。 なぜ結果が-1234になるのか私の体は説明できますか?Javaデータ型に関する質問
アサイグint j = + -1234
;等価である:
J =(1)今*(-1)* 1234(A)
:
-1 =(1)*(-1)(B)
その代わりにBとget:assignmenで
J = -1 * 1234
ので、J = -1234
実際、Javaコンパイラは+ - as + を取るため、-1234になります。あなたがしようとした場合 - + - その後、1234それはのように処理されます - + * - これは、あなたが使用することはできません1234を印刷します1234
public class Main {
public static void main(String[] args) {
int j = -+ -1234;
System.out.printf("%d", j);
System.out.println();
System.out.println(j);
} }
である1234 ++/- 以来、既にインクリメントとデクリメント操作するためのJavaで事前定義されたエフェクトに + -1234
これにJを設定している
したがって、意味が0から1234減算と同じで-1234の値に0を追加して値を印刷すると、-1234になります。 Wolframalphaでこれをテストすることができます:http://www.wolframalpha.com/input/?i=%2B+-1234
Hm、すべて正しいです。あなたは何を期待していますか? –
これは '0 +(-1234)'と同じです –
Bcz - の値が+より大きいので、 - signを代入し、答えが-1234の理由 –