一、问题
s == null时,抛空指针异常。
二、示例代码
public class TestDemo {
public static void main(String[] args) {
String str = "aaa" + "|" + "bbb" + "|" + "ccc";
String s1 = " ";
String s2 = "";
String s3 = null;
Integer idx1 = str.indexOf(s1);
Integer idx2 = str.indexOf(s2);
try {
Integer idx3 = str.indexOf(s3);
} catch(Exception e) {
e.printStackTrace();
System.out.println("indexOf()的参数不可以为null,否则抛NullPointerException!");
}
System.out.println("str-->idx of s1: " + idx1);
System.out.println("str-->idx of s2: " + idx2);
}
}输出结果:
java.lang.NullPointerException
at java.lang.String.indexOf(String.java:1734)
at java.lang.String.indexOf(String.java:1716)
at TestDemo.main(TestDemo.java:17)
indexOf()的参数不可以为null,否则抛NullPointerException!
str-->idx of s1: -1
str-->idx of s2: 0
三、结论
类似的其他类的方法,可能就是没有注意其参数不可以为null,导致抛java.lang.NullPointerException异常。
本文探讨了在Java编程中使用字符串时遇到null值的情况,特别关注了indexOf()方法处理null值时引发的NullPointerException异常,并通过示例代码展示了如何避免此类错误。
3万+

被折叠的 条评论
为什么被折叠?



