0

有没有办法解决代码?-

for (FieldInfo fieldInfo : info.getResult()) {
    result.addField(FieldSpec.builder(ClassName.bestGuess(fieldInfo.getClazz()),fieldInfo.getName())
          .addModifiers(Modifier.PRIVATE)
          .build()
    );
}

fieldInfo.getClazz()返回“int”,“float”时,代码会抛出一个错误

java.lang.IllegalArgumentException:无法猜测 int

4

1 回答 1

0

Java 的类型系统有很多种类型:类、数组、基元、参数化类型等。您使用的方法假定调用者想要一个ClassName而不是一个基元。为此使用TypeName.INT

于 2017-01-21T07:10:45.450 回答