我在使用concat时,并不清楚concat的实现原理。我就使用concat方法将两个字符串拼接起来webImageRootPath.concat(path)。但是后来代码报了java.lang.NullPointerException异常,检查webImageRootPath并不异常为空,当时很纳闷怎么会报空指针异常呢。从网上搜索之后发现,原来是path这个值为null。
-
public String concat(String str) {
-
int otherLen = str.length();
-
if (otherLen == 0) {
-
return this;
-
}
-
char buf[] = new char[count + otherLen];
-
getChars(0, count, buf, 0);
-
str.getChars(0, otherLen, buf, count);
-
return new String(0, count + otherLen, buf);
-
}
上面是concat的源码实现。原来使用concat方法时,参数str也不能为null,否则就会包空指针异常。