1

我使用以下代码并添加了对大小数的支持,并且编译器在大小数的创建对象上显示错误,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

我应该如何克服这个?

4

1 回答 1

6

你正在创造

new BigDecimal(nextRandom) 

哪里nextRandomBigDecimal。这是没有意义的。

换行

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

return new SwitchInputType<BigDecimal>(nextRandom);

并检查您是否仍然遇到相同的错误。

在我看到构造函数之前不能说别的SwitchInputType

于 2013-02-10T16:35:32.233 回答