...
double n=0.6;
BigDecimal m=BigDecimal.valueOf(n); //Translates a into a BigDecimal
...上面语句在eclipse报错:类型 BigDecimal 中的方法 valueOf(long)对于自变量(double)不适用
而我在API中查看到valueOf(double val)这个方法,很明显valueOf()方法中的参数可以是double类型的.
API对valueOf(double val)的说明如下:
Translates a double into a BigDecimal, using the double's canonical string representation provided by the Double.toString(double) method.是不是其中要用到Double.toString(double)??
如何用?怎样才解决我上面的问题?
希望能得到你们的帮助,谢谢~~~
double n=0.6;
BigDecimal m=BigDecimal.valueOf(n); //Translates a into a BigDecimal
...上面语句在eclipse报错:类型 BigDecimal 中的方法 valueOf(long)对于自变量(double)不适用
而我在API中查看到valueOf(double val)这个方法,很明显valueOf()方法中的参数可以是double类型的.
API对valueOf(double val)的说明如下:
Translates a double into a BigDecimal, using the double's canonical string representation provided by the Double.toString(double) method.是不是其中要用到Double.toString(double)??
如何用?怎样才解决我上面的问题?
希望能得到你们的帮助,谢谢~~~
double n=0.6;
BigDecimal m=BigDecimal.valueOf(n); //Translates n into a BigDecimal
...
不好意思,注释写错变量了,现在修改过来..
double n=0.6;
BigDecimal m=new BigDecimal(n); //Translates n into a BigDecimal
import java.math.*;
public class Test6{
public static void main(String args[]){
double n=0.6;
BigDecimal m=new BigDecimal(n);
System.out.println(m);
}
}
这样就没有错了
你在什么版本API中查看到valueOf(double val)这个方法,1.4只有valueOf(long val),没有你说的那个方法。我在SUN官方网站下载的,上面的内容都是直接copy过来的.
里面确实有valueOf(double val)这个方法,你可以下载来看看
这个方法是JDK1.5开始才有的。
搂主的问题,应该是出在所用的ECLIPSE里面用的JDK版本比较旧的原因。
换成最新的JDK1.5以上的,就可以了。可能的话,那你的ECLIPSE也换成最新的。用JDK1.5版本的JDK,以前的ECLIPSE可能会有一点问题。