String contains null
String.contains() 编译时可接受null, 但是在运行时不行,如下代码编译期不会报错,但是在运行时,会报空指针异常
@Test
public void testNull()
{
System.out.println("".contains(null));
}
- 1
- 2
- 3
- 4
- 5
查询string.java 得知,NullPointerException if <code>s</code> is <code>null</code>
明确告诉传入null 时会空指针异常
这种equals 就不会报异常,因为equals 首先会判断传入参数是否为String 类型,不是的话直接就是false 出来了
还是要多看源码,很明确的问题,有明确解决方案
String.contains() 编译时可接受null, 但是在运行时不行,如下代码编译期不会报错,但是在运行时,会报空指针异常
@Test
public void testNull()
{
System.out.println("".contains(null));
}
- 1
- 2
- 3
- 4
- 5
查询string.java 得知,NullPointerException if <code>s</code> is <code>null</code>
明确告诉传入null 时会空指针异常
这种equals 就不会报异常,因为equals 首先会判断传入参数是否为String 类型,不是的话直接就是false 出来了
还是要多看源码,很明确的问题,有明确解决方案