私はjdk1.6を使用しています。これは私のコードです。
float f = 10.0f;
double d = 10.0;
System.out.println("Equal Status : " + (f == d));
次に、システムは答えをとして表示しますtrue
。しかし、値を次のように変更した場合
float f = 10.1f;
double d = 10.1;
System.out.println("Equal Status : " + (f == d));
その後、システムは答えをfalseとして表示します。システムが==チェックにビットマッチングを使用していることを知っています。しかし、背後にある理由は何ですか。それについて説明してもらえますか?前もって感謝します。