如何知道哪个变量是 try 块中的罪魁祸首?
在某个尝试块中,我有两个变量,当我使用和时,它们可能会导致。问题是,如果我有例外,如何知道哪个字符串是麻烦制造者?我需要获取麻烦制造者的变量名称。String
NumberFormatException
Integer.parseInt(string1)
Integer.parseInt(string2)
catch
下面是一些示例代码:
public class test {
public static void main(String[] args) {
try {
String string1 = "fdsa";
String string2 = "fbbbb";
Integer.parseInt(string1);
Integer.parseInt(string2);
} catch (NumberFormatException e) {
e.printStackTrace();
}
}
}
而且该方法不会告诉我变量名称;它只是告诉我麻烦制造者的内容。e.printStackTrace()
java.lang.NumberFormatException: for input string: “fdsa” at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) at java.lang.Integer.parseInt(Integer.java:580) at java.lang.Integer.parseInt(Integer.java:615) at test.main(test.java:9) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
进程已完成,退出代码为 0
我需要知道变量名称的原因是我需要提示用户发生了什么。例如,通过使用
System.out.println(troubleMakerName + "is wrong!")
在我的要求中,用户应输入
fd=(fileName,maxLength,minLength)
然后我将分析输入字符串并创建一些响应。所以我想检查一下和是否会抛出.在这种情况下,如果有问题,那么我需要提示用户minLength是错误的。maxLength
minLength
NumberFormatException
minLength