Ayuda con BigDecimal

Hola a todos, recurro a ustedes por un pequeño problema que tengo, lo que pasa es que necesito hacer una division y quiero que el resultado me muestre con una gran cantidad de cifras decimales, para resumir lo que necesito es que al realizar una division el resultado que muestre sea muy preciso, leyendo libros me entere de que para eso existe la clase BigDecimal, yo pense que la forma de usar BigDecimal era parecida a usar BigInteger, en BigInteger para realizar una division se usa el metodo divide donde se envia como parametro otro objeto BigInteger, pero parece que en BigDecimal no es asi , ya que cuando deseo hacer este codigo :

BigDecimal numero = new BigDecimal( "3" ).divide( new BigDecimal( "243" ) );
       
System.out.println( numero );

me lanza la siguiente excepcion :

Exception in thread "main" java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.
at java.math.BigDecimal.divide(Unknown Source)

Ojala me puedan ayudar. Hasta luego.

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de ezamudio

Varios divide

Hay otra variante de divide que toma la escala que quieres usar. En este caso creaste dos BigDecimals con escala 0 (sin decimales) y por eso te saca esa excepción (lee el Javadoc de BigDecimal para la explicación completa).

Usa la variante que trae escala y modo de redondeo:

a.divide(b, 10, RoundingMode.HALF_EVEN);

Y elige el modo de redondeo que más se ajuste a lo que necesitas (lee el Javadoc de RoundingMode para la explicación completa).

Imagen de XinefPro

Gracias

Por la ayuda, me sirvio de mucho, con lo que me dijiste lo pude solucionar, xD