背景:
在一个项目中,idea编译器没有任何报错的提示,也没有任何显见的问题,执行后却报严重的空指针问题,找到问题所在后记录
两个类:
1.tryDemo
import java.util.ArrayList;
/**
* @author Seven
* @date 2022/9/2
*/
public class tryDemo {
ArrayList<String> stringArrayList ;
}
2.运行类Test
public class Test {
public static void main(String[] args) {
tryDemo tryDemo = new tryDemo();
//调用一个tryDemo类对象的Array数组,并添加字符串"123"
ArrayList<String> arrayList = tryDemo.stringArrayList;
arrayList.add("123");
//进行判断数组是否为空
if (!arrayList.isEmpty())
{
System.out.println("1");
}
}
}
此时运行Test中的main函数后,结果报空指针异常,而不是打印出 字符 ”1“
Exception in thread "main" java.lang.NullPointerException
at Test.main(Test.java:7)
处理方法:
原因是未对类tryDemo进行初始化操作,将tryDemo中的stringArrayList初始化:
import java.util.ArrayList;
/**
* @author Seven
* @date 2022/9/2
*/
public class tryDemo {
ArrayList<String> stringArrayList = new ArrayList<>();
}
成功打印出结果: