double の変数を割り当てると、数値に等しくなります。私の理解では、この数値が実際に 1 と 0 を使用して表現/格納されているものは、割り当てたばかりのこの数値とまったく同じではない可能性があります。リテラル値を double 変数に割り当ててから、この変数を出力すると、出力される数値がリベラルな値と異なる可能性はありますか?
System.out.println(123456789.123456789); を試しました。結果は 1.2345678912345679E8 です。変わりはない。