02-07 Java言語の基礎(データ型変換)

データ型変換の暗黙的な変換

数値タイプ間の法的変換
この図には、情報を失うことなく変換を示す6つの実線の矢印と、精度を失う可能性のある変換を示す3つの破線の矢印があります。

2つの値をバイナリ演算子で接続する場合は、2つのオペランドを同じタイプに変換してから、計算を実行する必要があります:

  • 2つのオペランドの一方がdouble型の場合、もう一方のオペランドはdouble型に変換されます。
  • それ以外の場合、一方のオペランドがfloat型の場合、もう一方のオペランドはfloat型に変換されます。
  • それ以外の場合、一方のオペランドがlong型の場合、もう一方のオペランドはlong型に変換されます。
  • それ以外の場合は、両方のオペランドがint型に変換されます。

フロートタイプとロングタイプは操作され、自動的にフロートタイプに変換されます。

public class DataType01 {
    
    

	public static void main(String[] args) {
    
    
		// TODO Auto-generated method stub
		//float和long类型进行运算,自动转换为float类型
		float a = 10;
		Long b = 11L;
		float c = a + b;
		System.out.println(c);
	}
}

Byte型とint型が操作され、自動的にint型に変換されます。

public class DataType02 {
    
    

	public static void main(String[] args) {
    
    
		// TODO Auto-generated method stub
		byte a = 10;
		int b = 20;
		int c = a + b;
		System.out.println(c);
	}

}

データ型変換の強制型変換

前のセクションで見たように、必要に応じて、int型の値は自動的にdouble型に変換されます。しかし一方で、doubleをintに変換する必要がある場合もあります。Javaでは、そのような値間の型変換が許可されており、もちろん一部の情報が失われる可能性があります。情報が失われる可能性のあるこの変換は、キャストを通じて行う必要があります。

double型変数をint型にキャストします。

public class DataType03 {
    
    

	public static void main(String[] args) {
    
    
		// TODO Auto-generated method stub
		double a = 37.5;
		System.out.println((int)a);
	}

}

おすすめ

転載: blog.csdn.net/qq_37054755/article/details/110790901
おすすめ