1. ホーム
  2. java

[解決済み] Javaでdoubleをfloatに変換する

2022-02-26 10:14:38

質問

の変換に関連する問題に直面しています。 double から float . 実は、float 型を格納しています。 23423424666767 のように、データベースからデータを取得する場合、以下のようなコードになります。 getInfoValueNumeric() のものである。 double の型になります。取得する値は 2.3423424666767E13 という形式をとります。

では、どうすれば float のようなフォーマットデータです。 23423424666767 ?

2.3423424666767E13 to 23423424666767

public void setInfoValueNumeric(java.lang.Double value) {
    setValue(4, value);
}


@javax.persistence.Column(name = "InfoValueNumeric", precision = 53)
public java.lang.Double getInfoValueNumeric() {
    return (java.lang.Double) getValue(4);
}

解決方法は?

doubleをfloatにキャストするだけです。

double d = getInfoValueNumeric();
float f = (float)d;

また、プリミティブ型は無限の数のセットを保存することはできないことに注意してください。

float range: from 1.40129846432481707e-45 to 3.40282346638528860e+38
double range: from 1.7e–308 to 1.7e+308