返回最大数字时出现NumberFormatException错误?

时间:2017-03-30 17:28:48

标签: java

我在线练习Java,其中一个练习题是:

"编写一个名为greaterAbsVal的方法,该方法将两个整数作为参数,并返回两个绝对值中较大的一个。对largeAbsVal(11,2)的调用将返回11,并且对GreaterAbsVal(4,-5)的调用将返回5。"

到目前为止,我已经编写了我的方法解决方案:

public static int largerAbsVal(int a, int b) {
    return Math.max(Math.abs(a), Math.abs(b));
}

但由于某种原因,该网站一直告诉我,我的代码导致了NumberFormatException类型的错误?我已经在标题处将这两个参数声明为整数,那么在这种情况下我的代码究竟出了什么问题呢?

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

来自NumberFormatExecpton

  

抛出以指示应用程序已尝试将字符串转换为其中一种数字类型,但该字符串没有适当的格式。

您发布的代码效果很好!我的猜测是你的错误是在那段代码之前的某个地方,你将字符串转换为int。例如:

Integer.parseInt(string)

并且string给出的格式错误(即不是int)。例如,"2.1"之类的内容会抛出这样的错误。

希望这有帮助!