BigDecimal上有Square Root的库吗?

Dan*_*ral 30 java math

Java中的BigDecimal上有Square Root的库吗?

Red*_*der 14

JScience v4.3.1有一个Real类似乎BigDecimal可以帮助你的类.用法示例:

// The Square Root of Two, to 30 digits
// According to "The Square Root of Two, to 5 million digits."
// Source: http://www.gutenberg.org/files/129/129.txt
System.out.println("1.41421356237309504880168872420");

// Using JScience with 50 digits precision
Real.setExactPrecision(50);
System.out.println(Real.valueOf(2).sqrt());

// Using default java implementation
System.out.println(Math.sqrt(2));

> 1.41421356237309504880168872420
> 1.414213562373095048801689
> 1.4142135623730951
Run Code Online (Sandbox Code Playgroud)

编辑:更新了代码和链接以反映当时的当前版本(v4.3.1).基于@ile和@Tomasz的评论,谢谢.


cle*_*tus 12

尝试大方根.它使用牛顿方法逼近平方根等解.