最初に使用する変数の代入の後
- 変数に割り当てられては何の代表ではありません
- 何が起こるかの使用上の割り当てなし(与えられています)
そして代入演算子を計算します
- 役割は、コードより簡潔にすることです。このようにA + A = 10、これは次のように簡略化することができるA + = 10
- + =
- - =
- * =
- / =
- %=
- &=
- ^ =
- | =
- << =
- >> =
- >>> =
パブリック クラスCalcAndAssign { 公共 静的 ボイドメイン(文字列[] argsが){ int型 = 16 ; >> = 2 ; のSystem.out.println(); // この場合は4。 * = 9 ; のSystem.out .println(); // この場合、36 } }
自動データ型変換
- 自動型変換
- 型変換は問題にならないであろう、プログラミング言語のような、自動型変換を行うことができ、高精度デジタル-デジタル変換の精度が低いです。
- 自動型変換は、演算発生する可能性があり、また、割り当てに起こり得ます。
- 数値精度のシーケンス:ダブル>フロート>ロング> int型>短期>バイト
- charがint型に変換することができます
- charがint型に変換することができます
- それはunsigned char型、表現できる範囲を越えて短距離なので、それは自動的にショートに変換することができない、また、2バイトです。
パブリック クラス自動変換{ 公共 静的 ボイドメイン(文字列[]引数){ int型 INTVAL = 99 。 長い longVal = INTVAL。 長い longVal2 = INTVAL + 1 。 System.out.println(longVal2)。 フロート FLOATVAL = 11.32f 。 ダブル doubleVal = FLOATVAL。 ダブル doubleVal2 = doubleVal * 2 。 System.out.println(doubleVal2)。 int型、A = 99 ; ダブル B = 5 ; System.out.printlnは( /B); チャー CH = 'A' 。 int型 CHNUM = CH; int型 chNumCalc = CH + 10 。 System.out.println(CH)。 System.out.println(CHNUM)。 System.out.println(chNumCalc)。 } }
必須データ型の変換
- 型変換の問題は、キャストの使用を必要とするかもしれない精度は低い精度の数値に変換など。
- オペレータがキャストです。
- 構文は、目標値の前に配置されているが、括弧で囲まれたタイプによって変換されます。
- キャストが発生する可能性がありますデータの損失を。
パブリック クラスForceConvert { 公共 静的 ボイドメイン(文字列[]引数){ int型 INTVAL = 99 。 長い longVal = 19999 ; INTVAL =(INT )longVal。 フロート FLOATVAL = 11.32f 。 倍増 = 3344556.789 doubleValを。 FLOATVAL =(フロート)doubleVal。 int型 = 65 A ; チャー B =(CHAR )A。 System.out.println(B)。 } }
パブリック クラスForceConvertValueLoss { 公共 静的 ボイドメイン(文字列[]引数){ int型 INTVAL = 99 。 長い longVal = 5555555555555L 。 INTVAL =(INT )longVal。 System.out.println(INTVAL)。 フロート FLOATVAL = 11.32f 。 倍増 = 1234567890.123456 doubleValを。 FLOATVAL =(フロート)doubleVal。 System.out.println(FLOATVAL)。 System.out.println(doubleVal)。 } }
数値オーバーフロー
- 数値オーバーフローしたら、結果は意味がありません。例えば、2つの正の数字は負の番号を追加します。(2つの数字は、それらが属するタイプの範囲外であるため、一方が最初のものであることを起こる場合、これは、次いで、コンピュータは、負の数であると考えるされています。)
- 扱うことができる値の概算を持っています。
パブリック クラスCalcValueLoss { 公共 静的 ボイドメイン(文字列[]引数){ int型 INTVAL = 2000000000 。 System.out.println(INTVAL + INTVAL)。 } }
数値オーバーフローから算出した境界のプログラマーやプログラミング言語責任を理解
- プログラミング言語の役割
- を使用したプログラミング言語の文法に従ってを担当
- プログラミング言語とコンピュータの相互作用を担います
- プログラマーの仕事
- 問題を理解するための責任プログラマー
- プログラムにプログラムの理解と問題を担当するプログラマ
- プログラマが問題を解決するための責任があり、問題を解決するためのプログラミング言語のための責任を負いません