Java で Double を Float に変換する
このチュートリアルでは、Java で double 値を float にキャストする方法を学習します。Double 型と float 型は、Java で実数または浮動小数点数を格納するために使用されますが、double データ型は float よりも正確です。浮動小数点数のデフォルトのデータ型は double であることに注意してください。
Java で TypeCasting を使用して Double を Float に変換する
浮動小数点型を定義するには、接尾辞 f
または F
を使用する必要がありますが、double の場合は接尾辞 d
または D
を使用することはオプションです。float のデフォルト値は 0.0f
ですが、double のデフォルト値は 0.0d
です。デフォルトでは、Java では浮動小数点数は double として扱われます。
TypeCasting は、あるプリミティブデータ型の値を別の型に割り当てるプロセスです。double は float よりも大きなデータ型であることがわかっているため、ダウンキャストする必要があります。関数 double
を float
に型キャストするには、10 進値の前に括弧で囲まれた float
キーワードを指定する必要があります。
double データ型は、倍精度の数値を格納するためにより多くのメモリを必要とし、出力でより正確であることがわかります。対照的に、float データ型は、単精度数値を格納するために必要なスペースが少なく、小数点以下 6 桁までフォーマットされた結果を提供します。したがって、ダブル d
をフロート f
に明示的にタイプキャストしました。
public class JavaDoubleToFloat {
public static void main(String args[]) {
double d1 = 1.0;
double d2 = 3.0;
double d = d1 / d2;
System.out.println("double d : " + d);
float f = (float) d;
System.out.println("float f : " + f);
}
}
出力:
double d : 0.3333333333333333
float f : 0.33333334
Java で Double.floatValue()
を使用して Double を Float に変換する
Java で double 値を float データ型に変換する別の方法は、ラッパークラス Double を使用することです。このクラスは、プリミティブデータ型 double
をオブジェクトにラップします。
ここでは、新しい double オブジェクト db
を作成し、new
キーワードを使用してコンストラクターで double 変数 d
を渡します。これは、プリミティブな二重引数を表します。プリミティブ変換を絞り込んだ後、double データ型の値を float として返すメソッド floatValue()
を使用しました。
Narrow Primitive Conversion を使用すると、大きなデータ型を小さなデータ型に格納しようとしているため、情報と精度が失われる可能性があることがわかります。出力では、double が float に変換され、精度が低くなっていることがわかります。
public class JavaDoubleToFloat {
public static void main(String args[]) {
double d1 = 1.0;
double d2 = 3.0;
double d = d1 / d2;
System.out.println("double d : " + d);
Double db = new Double(d);
float f1 = db.floatValue();
System.out.println("float f1 : " + f1);
}
}
出力:
double d : 0.3333333333333333
float f1 : 0.33333334
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn関連記事 - Java Double
- Java で Int を Double に変換する
- Java で Doubles を比較する
- Java でのダブル
- Java で long を double に変換する
- Java の浮動小数点および倍精度データ型
- Java で Double を文字列に変換する