You can't limit the precision (not "accuracy") of a
double to 6 significant [decimal] figures. A normalised
double uses 53 bits of precision, which is 53 * log2 = 15.96 decimal places.
You can print out a
double with the %e tag; you will have to check its details in
Formatter, but you can probably get that to display 6 sig fig.
A
double is classed as double-precision, using 64 bits; there are specifications for quadruple-precision floating point numbers (128 bits, not used in
Java) and single-precision (32 bits, called
float in Java). A normalised
float has 24 bits' precision which is equivalent to 7.3 [decimal] significant figures, so that might solve your problem.