Problema con operaciones dato tipo double

Karre?
21 de Abril del 2006
Hola a todos, necesito vuestra ayuda porque tengo un problema que me trae de cabeza.En una parte de mi programa el usuario introduce atraves de un campo de texto un valor numerico , este campo es traducido a dato tipo double usando :

double valor=Double.parseDouble((String)jTextField.getText());

El dato es leido de modo correcto.Mi problema se presenta cuando intento realizar operaciones (sumas y restas).
Por ejemplo si intento restar el valor \"1\" y el valor \"0.3\"
en lugar de darme como resultado:

* 1- 0.3= 0.7
me da como resultado :

* 1- 0.3 = 0.700000000000000002

¿A que se debe ese error? ¿Como puedo solucionarlo?
¿Existe alguna manera de truncar en numero de decimales?
Gracias a todos, espero vuestra respuesta .
Un saludo.