Javaデータ型変換(自動変換と強制変換)

1227 ワード

データ型の変換は、自動変換と強制変換に分けられます.
自動変換:プログラムが実行中にひっそりと行われる変換で、ユーザーが事前に宣言する必要はありません.一般的には、ビット数の低いタイプからビット数の高いタイプへの変換(低精度->高精度変換)です.
強制タイプ変換:変換順序が制限されない(高精度->低精度変換)とコードに宣言する必要があります.PS:この変換は精度損失がある.
自動データ型変換:自動変換は、低精度から高精度の順に変換されます.異なるタイプのデータ間の優先関係は、低------------------------------------------------------------------------------------------------------------------高byte,short,char->int->long->float->double
強転:コードに高さを宣言する必要があります-------------------------------------------------------------------------------------------->低double->float->long->int->byte,short,char
例1:
public class Demo {
   public static void main(String[] args){
 int x; double y;
 x = (int)34.56 + (int)11.2;  //     (  )
y = (double)x + (double)10 + 1;  //     (    )
System.out.println("x=" + x);
System.out.println("y=" + y);
  }
}

実行結果:x=45 y=56.0
プログラム分析:1、34.56前にintの強制タイプ変換があったため、34.56は34になった.同じ11.2で11になったので、xの結果は45です.2、xの前にdoubleタイプの強制変換があるので、xの値は45.0になり、10の前もdoubleタイプに強制されるので10.0になるので、最後にyの値は56になります.メモ:精度を向上させるため、宣言しても宣言しなくてもいいです.
転載:https://blog.csdn.net/farsight1/article/details/80447658 https://blog.csdn.net/u011240877/article/details/47721135