2012-10-09 18 views

答えて

8

実手段浮動小数点、すなわちintegersとは対照的に(int又はlong

Real number
10

積分とは対照的にdouble又はfloat、。数学では、実数は、4.2またはpiのような連続体に沿った任意の値にすることができます。整数は実数のサブセットです。

HereはJavaプリミティブです。数字のために重要なもののいくつかは、整数を欲しいときはint、分数を許可したいときはdoubleが含まれます。あなたがそれらから逸脱した場合、あなたは一般的にそうする特別な理由があります。

整数はバイナリで表現するのが非常に簡単で、特定のビット数で正確に表現できる特定の整数範囲を指定するのは簡単です。 Javaのintは32ビットを使用し、-2,147,483,648から2,147,483,647になります。他の整数型も同様ですが、ビット数が変わります。

しかし、連続体に沿って番号を表すことはより困難です。実数ライン上の任意の2つの点の間には、無限に他の実数が存在する。したがって、ある区間内のすべての実数を正確に表すことはできません。これを回避する方法の1つはfloating-point numbersです。詳細にはあまり行きすぎることはありませんが、基本的には精度が失われ、正確に表現できるものにはギャップがあります。多くの目的のためにこれは重要ではありませんが、銀行口座の残高を追跡するなどの場合、これは重要です。有名なWhat Every Computer Scientist Should Know About Floating-Point Arithmeticを読む価値があります。

Javaでは、これらの問題のいくつかを回避する方法の1つは、BigDecimalのようなものを使用することです。他のいくつかの言語は、代替として他のプリミティブを提供するかもしれない。たとえば、C#はdecimalのデータ型を持ち、Javaはデータ型を持たない。

+0

さて、良い答え、ありがとう。 – user1732538

関連する問題