データ型変換
1.1自動変換
/ * データが同じタイプでない場合、データ型の変換が行われます。 自動型変換(暗黙の) 1、特徴:母は自動的に、特別な処理を必要としません。 2.ルール:データは小から大までの範囲。 * / パブリック クラスDemo01DataType { 公共 静的 ボイドメイン(文字列[]引数){ のSystem.out.println( 1024); // これは整数であり、デフォルトではint型である のSystem.out.println(3.14); // これは、デフォルトでは、double型の浮動小数点数である // 長いNUM1 = 100L; // 左が長いタイプで、右、左、デフォルトのint型、右同じではない // 記号は左に、右にint型の定数を代入を表し等しいです側長い変数記憶 // INT - >長い、大小規模の要件に沿ったデータの範囲 //はコードタイプの変換のこの行は自動的に行われます。 ロング NUM1 = 100; のSystem.out.println(NUM1); // 100 // 左、右は異なる周り型フロートのdouble型である // フロート-ルールに沿った小から大まで、>二重 // も施さ自動型変換 二重 NUM2 = 2.5F ; のSystem.out.println(NUM2); // 2.5 // 左float型である、右のタイプが長く、左右同じではない // 長い- >フロート、フロートの範囲は、小児に沿って、大きくなっています大型のルール //は、自動変換が発生した フロート NUM3 = 30Lを、 のSystem.out.println(NUM3); // 30.0 } }
1.2キャスト
/ * キャスト 1、機能:それは特別なフォーマットを自動的に実行することはできませんする必要があります。 2、形式:小規模変数名=(小型)のタイプの小範囲は、データの大きな範囲を有し; * / パブリック クラスDemo02DataType { 公共 静的 ボイドメイン(文字列[]引数){ // 左int型、ロングタイプではなく、同じ右されて // 長い- > int型ではなく、小さなから大に // 変換入力自動的には行われません // 形式:変数名=(小型タイプ)の種類の小さな小さな範囲が広範囲のを持っていましたデータ; INT NUM =(INT)100L ; のSystem.out.println(NUM); } }
1.3変換ノート
/ * 注: 1精度の潜在的な損失は、データのオーバーフローが発生するため、キャストが一般的に推奨されていません。 2、数学演算これらの3種類のバイト/ショート/チャーは、例えば、起こり得る:。「+」 操作でこの3種類の3、bytp /ショート/チャーは、彼らが最初になって、その後、INTになるように促進されること計算
4、ブールデータ型変換タイプが起こることができない * / パブリック クラスDemo02DataType { 公共 静的 ボイドメイン(文字列[]引数){ // ロング強制的にINTに変換 INT NUM2 =(INT)6000000000L ; // オーバーフロー のSystem.out。 println(num2の); // 1705032704;すでにフィットに下向きの範囲のint型の整数を超えるデータがある場合、オープン保持していません。 // ダブル- > int型:精密小数小数位の損失は、整数に失われる int型 NUM3 =(int型)3.5 ; System.out.printlnは(NUM3); // 3は、これはすべての小数点以下の桁数を丸め廃棄されるではありません。 チャー zifu1 = 'A'; // この変数であるA大文字の文字、 のSystem.out.println(+ zifu1 1); // 66は、65として扱われるA大文字 // コンピュータの基礎をなします文字を表現するために、デジタル(バイナリ)を使用します、である65 // 数学演算のchar型たら、その後の文字がデジタルに変換一定のルールに従うことになる バイト Num4 = 40; // 注意!値は左側の範囲の右種類のサイズを超えることはできません バイト Num5 = 50 ; // バイト+バイト---> INT + INT ---> INT INT結果1 + = Num4 Num5; のSystem.out.println(結果1)。// 90 ショート Num6 = 60; // バイト+短い---> int型+ int型---> int型 // int型結果2 = Num4 + Num6; // 短いとint型のキャスト:あなたは論理的に真の大きさを確保しなければならないことに注意してくださいは、これ以上短い範囲よりも持っているだろう、そうでない場合データのオーバーフローが発生した ショート結果2 =(ショート)(+ Num4 Num6) のSystem.out.println(結果2); // 100 } }
1.4 ASCIIコード表
/ * コントロール表の数字と文字(コード表) ASCIIコード表:情報交換用米国標準コード、米国標準コード情報交換のための Unicodeコード表:それは演奏するだけでなく、制御数字と記号との関係、初めの部分0-127まったく同じASCIIが、初めからは、128の以上の文字が含まれています。 48 - '0' 65 - 'A' 97 - 'A' * / パブリック クラスDemo03DataTypeChar { 公共 静的 ボイドメイン(文字列[]引数){ チャー zifu1 =」1' ; のSystem.out.println(zifu1 + 0)。// 49 チャー zifu2 = 'A' ; チャー zifu3 = 'C' ; // 左int型であり、char型が正しい // チャーは、> --- 自動型変換が発生 INT NUM = zifu3; のSystem.out.println(NUM); // 99 チャー zifu4 = 'と'; // 正しい表現 するSystem.out.println(zifu4 + 0); // 20013 } }