I recently tested something out that I heard using the following code
public static void main(String[] args) {
double x = 4.35 * 100;
System.out.println(x);
}
.
I am interested as to why this produces 434.99999999999994 rather than 435.0 . Thanks
When you type:
double x = 4.35;
x
is not stored as-is. It is stored in a approaching form (probably 4.349999999 in this case).
If you want exact result, please use BigDecimal
.
You can learn about the accuracy problems of floating-point technology.