今天早上我正在努力解决一个奇怪的错误NullPointerException
String a,b;
a = this.getA();
b = this.getB();
if(a == null || a.equals(""))
a = "unknown a";
if(b == null || b.equals(""))
b = "unknown b";
System.out.println("a = " + a + " & " + "b = " b);
// the output is : a = a & b = unknown b
process(a,b); // The error occure here
此时我得到:Exception in thread "main" java.lang.NullPointerException
这里有什么问题?!
答案 0 :(得分:2)
这些行都不能产生NullPointerException
。我只能想象它在代码的其他部分。将来,如果您的问题是异常,请发布整个堆栈跟踪。
编辑:好的,你在process()
表示了它。那你为什么发布这段代码而不是process()
?
答案 1 :(得分:0)
你在评论中说b = unknown b,这意味着this.getB()== null或一个空字符串。我猜你的进程(a,b)方法中的某些东西试图使用原始的b值。如果你再次使用getB(),它会重置值吗?
如果您发布您的流程(a,b)方法,我们可以检查/确认,因为它只能在我们看到实际代码之前进行推测。