问题
for(int i=0;i<n;i++){
for(int j=0;j<26;j++){
if(str.charAt(i)== strChar.charAt(j) )
* strSet1.append(str.charAt(i));
}
* strSet2.append(str.charAt(i));
}
Exception:
Exception in thread "main" java.lang.NullPointerException
at AterSeries.main(AterSeries.java:33)
why this code gives null pointer exception
warning: Null pointer access: The variable strSet1 can only be null at this location Null pointer access: The variable strSet2 can only be null at this location
回答1:
Are strSet1
and strSet2
initialized before this? If they are null, you'd get a NullPointerException
.
* EDIT *
You cannot call .append()
(or any other method) on a variable that is null
. Initialize them as:
StringBuffer strSet1 = new StringBuffer();
StringBuffer strSet2 = new StringBuffer();
来源:https://stackoverflow.com/questions/20035122/null-pointer-access-the-variable-can-only-be-null-at-this-location