String contains null

String contains null

原创  2017年03月15日 17:28:33

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 出来了

还是要多看源码,很明确的问题,有明确解决方案

猜你喜欢

转载自blog.csdn.net/zhairuiping1989/article/details/79062128