アプリ版:「スタンプのみでお礼する」機能のリリースについて

コンパイル時に
検出値 : double
期待値 : float

a = 2.0;
部分に精度が落ちている可能性のエラーがでます。



//Exercise1.java

class Exercise1 {
public static void main (String args []){
float a;

a = 2.0;
System.out.println("変数aの値は" + a + "です。");
}
}


変数の宣言部分をfloatからdoubleに変えるとエラーは出ません。本の例題としてはfloatなのです。
どういう事なのでしょう?
よろしくお願いします。

A 回答 (1件)

定数として、浮動小数を記述するとdouble になります。


なので、double を float に代入しようとしているのでエラーになります。
最初から float を扱うとわかっている場合
a=2.0F;
のようにfloat の定数であることを明示する必要があります。
    • good
    • 0
この回答へのお礼

解決しました。
本には
a = 2.0;
と書かれています。(誤植?)
回答どうり
a = 2.0F;
にしても、
a = 2;
にしても、
「変数aの値は2.0です」
と表示される事がわかりました。
ありがとうございました。

お礼日時:2006/05/16 04:48

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!