type.浮動小数点数が含まれている場合、値はラウンドトリップしない可能性があります。値は、操作が元の浮動小数点数を別の形式に変換した場合、逆の演算で変換後の形式を浮動小数点数に変換し、最終的な浮動小数点数が元の浮動小数点数と等しくない場合に、ラウンドトリップと呼ばれます。変換で1つ以上の有効桁が失われたり、変更されたりすると、ラウンドトリップが失敗する可能性があります。値が文字列に変換され、ファイルに保存されます。出力に示されているように、値が同一であるように見える場合でも、復元された値は元の値と同じではありません。値の完全な有効桁数を保持することで、値を正常にラウンドトリップできます。書式指定子が元の値のラウンドトリップに失敗することがあります。書式指定子を使用します。値よりも精度が低くなります。値と等しくないことがよくあります。値に割り当てられています。Doubleにキャストされた後、2つの値の比較によって等しくないことが示されます。メソッドを使用して両方の値の有効桁数を同じにします。型の有効桁数が失われるため、プラットフォームによって若干異なる場合があります。異なる場合があります。変数に割り当てられている場合の違いを示しています。メソッドの結果は、精度の低下による影響を受けないことに注意してください。値が同一の値を表す必要があります。値間の精度が異なるため、または1つまたは両方の値によって精度が低下していることが原因で、浮動小数点値が同一であることが予想される場合は、少なくとも有効桁数が異なるために等しくならないことがあります。メソッドを呼び出したりすると、多くの場合、予期しない結果が発生します。これは、次の例では明らかです。値は、最初の精度が15桁で、2番目の値が17であるため、等しくないことになります。False異なるコードパスに従い、異なる方法で操作される計算値は、多くの場合、等しくないことが証明されます。値が2乗され、平方根が計算されて元の値が復元されます。と二乗が乗算されます。メソッドを呼び出すと、それらの値が等しくないことが示されます。未満であることが示されます。メソッドを呼び出すことができます。メソッドを呼び出して、両方の値の有効桁数が同じであることを確認します。次の例では、この方法を使用するように前の例を変更し、2つの小数部の値が等価になるようにしています。Trueただし、精度の問題は、中間値の丸めにも適用されることに注意してください。メソッドを参照してください。method.等価ではなく、おおよその等価性をテストします。そのためには、2つの値が異なる一方でも同じである必要がある絶対金額を定義するか、小さい値が大きな値から逸脱する相対的な量を定義する必要があります。値の間の距離の絶対測定値として使用されることがあります。加算または減算できる最小値を測定します。値が小さすぎて検出できません。したがって、値がゼロの場合を除いて、等しいかどうかのテストでは使用しないことをお勧めします。メソッドを定義しています。メソッドの呼び出しの結果も比較します。Exceptionsオーバーフローや0による除算などの無効な操作で例外をスローする整数型の操作とは異なり、浮動小数点値を持つ演算では、例外はスローされません。(NaN):浮動小数点演算の結果が変換先の形式に対して小さすぎる場合、結果は0になります。これは、次の例に示すように、2つの非常に小さい数値が乗算された場合に発生する可能性があります。NegativeInfinityになります。NegativeInfinityになります。0で正の被除数を除算した結果も得られます。