这个错误是否意味着我在空值上调用isNumber()
?我似乎无法理解它。
No signature of method:
java.lang.Integer.isNumber() is applicable for argument types: () values: [].
Stacktrace follows:
Message: No signature of method:
java.lang.Integer.isNumber() is applicable for argument types: () values: []
答案 0 :(得分:5)
此错误表示:类java.lang.Integer
没有方法isNumber()
方法isNumber()
属于类java.lang.String
。请参阅文档:http://groovy.codehaus.org/groovy-jdk/java/lang/String.html#isNumber()
也许你正在尝试这样做:
123.isNumber() // will trow the error
正确的是:
"123".isNumber()
答案 1 :(得分:2)
isNumber
是String
的一种方法。您在整数 - http://groovy.codehaus.org/groovy-jdk/java/lang/String.html#isNumber()
在号码上拨打isNumber
是没有意义的。你知道它已经存在了。您可能希望在可能重新编号的字符串上调用它。
这里是如何在groovy shell中重现的。
groovy:000> new Integer(5).isNumber()
ERROR groovy.lang.MissingMethodException:
No signature of method: java.lang.Integer.isNumber() is applicable for argument types: () values: []