ノートのキャスト

ノートのキャスト


精度の潜在的な損失は、データのオーバーフローを発生するので、1キャストは、一般的には推奨されません。
2.バイト/ショート/チャー3種類のそのような加算のような数学的演算を、起こり得る「+」
時間これらの3種類の動作で3バイト/ショート/チャーは、計算次に、第int型になるように促進されます。
4. boolean型データ型変換は発生しません

コード:

1  パブリック クラスDemo02DataType {
 2      公共 静的 ボイドメイン(文字列[]引数){
 3。         // 左int型、同じ右のタイプは、長くていない
 4。         // 長い- > int型、大型に小さくない
 5          // 発生しません自動変換!
6          // 形式:変数名=範囲(小型)の小さな小さなタイプがデータの広い範囲を持っていた; 
7          int型 NUM =(INT)100L 図8          のSystem.out.println(NUM);
 9          
10          // キャストするlong int型
。11          INT NUM2 =(INT)6000000000L ; // int型よりも大きい60億の範囲
12である          のSystem.out.println(NUM2); // 1705032704 -----原因データオーバーフロー
 13は         
14          // ダブル- 、キャスト> INT 
15          INT NUM3 =(INT)3.99 ;
 16          のSystem.out.println( NUM3); // 3本が丸みを帯びていないされ、すべての小数点以下の桁は破棄され、歪みのデータの精度を起こし----
 17。         
18である         文字 zifu1 =「」; // この変数は大文字の文字であり、 A 
19          のSystem.out.println(+ zifu1 1); // 66、即ち大文字A 65として処理され
 20         、キャラクタAを表現するデジタル(バイナリ)を使用する底//コンピュータ65であり、
21は// char型は、数学的操作がされると、その後の文字は、特定の規則に従って数値に変換される
22          
23         バイト Num4 = 40; //は注意してください!値は左側の範囲の右種類のサイズを超えることはできない
 24          バイト Num5 = 50 ;
 25          // - - > + INT INT> INTバイトバイト+ 
26である         INT結果1 + = Num4 ; Num5
 27          のSystem.out.println(結果1 ); // 90 
28          
29          短い Num6 = 60 ;
 30          // バイト+短い- > INT + INT - > INT
 31は         // intは短いキャスト:注ロジックは、実際の大きさの範囲は、短絡を超えないことを確認する必要がありそうでない場合は、データのオーバーフローが発生する
32          ショート結果2 =(ショート)(+ Num4 Num6)を、
 33であります         System.out.println(結果2)。// 100 
34      }
 35 }

出力:

  100

  1705032704

  3

  66

  90

  100

おすすめ

転載: www.cnblogs.com/chenliqiang/p/11442788.html