创建大小数对象时出错

时间:2013-02-10 16:32:31

标签: java bigdecimal

我使用以下代码,我添加了对大十进制和编译器显示的支持 大小数new BigDecimal(nextRandom)的创建对象出错,我该如何克服它?

所有其他类型都按预期工作。

public static SwitchInputType<?> switchInput(final String typeName, final String memberName, final int cnt, boolean random) {
...
} else if (typeName.equals("decimal") || (typeName.equals("java.math.BigDecimal"))) {
    BigDecimal nextRandom = RandomizeValues.nextRandom("9");
    return new SwitchInputType<BigDecimal>(new BigDecimal(nextRandom));<-HERE IS THE ERROR

} else if (typeName.equals("boolean")) {
    boolean randomBoolean = RandomizeValues.nextRandom();
    return new SwitchInputType<Boolean>(new Boolean(randomBoolean));
}

错误是:

The constructor BigDecimal(BigDecimal) is undefined

我该如何克服这个?

1 个答案:

答案 0 :(得分:6)

您正在创建

new BigDecimal(nextRandom) 

其中nextRandomBigDecimal。这是没有意义的。

替换

return new SwitchInputType<BigDecimal>(new BigDecimal(nextRandom));

return new SwitchInputType<BigDecimal>(nextRandom);

并检查是否仍然出现同样的错误。

在看到SwitchInputType

的构造函数之前,别说什么了