Java中不注意出现的java.lang.NullPointerException
2016-08-04 21:54
766 查看
在Java编程中,时不时就会遇到java.lang.NullPointerException的异常,先来看以下代码:
public class Test {
private Map<String, String> map;
public void test(){
map.put("1", "John");
map.put("2", "Lily");
System.out.println(map.toString());
}
public static void main(String[] args) {
Test test = new Test();
test.test();
}
}上面这段代码会报异常:
Exception in thread "main" java.lang.NullPointerException
问题出在map虽然初始化了,但是成员变量默认初始化为null,并没有分配内存,此时对map进行put操作,势必会报空指针异常。
解决办法是对map进行初始化,修改为以下代码即可。
public class Test {
private Map<String, String> map = new HashMap<>();
//private Map<String, String> map;
public void test(){
map.put("1", "jichenxiao");
map.put("2", "fanwenxiao");
System.out.println(map.toString());
}
public static void main(String[] args) {
Test test = new Test();
test.test();
}
}
public class Test {
private Map<String, String> map;
public void test(){
map.put("1", "John");
map.put("2", "Lily");
System.out.println(map.toString());
}
public static void main(String[] args) {
Test test = new Test();
test.test();
}
}上面这段代码会报异常:
Exception in thread "main" java.lang.NullPointerException
问题出在map虽然初始化了,但是成员变量默认初始化为null,并没有分配内存,此时对map进行put操作,势必会报空指针异常。
解决办法是对map进行初始化,修改为以下代码即可。
public class Test {
private Map<String, String> map = new HashMap<>();
//private Map<String, String> map;
public void test(){
map.put("1", "jichenxiao");
map.put("2", "fanwenxiao");
System.out.println(map.toString());
}
public static void main(String[] args) {
Test test = new Test();
test.test();
}
}
相关文章推荐
- onMeasure 出现java.lang.NullPointerException
- Struts2中 出现Exception starting filter struts2 java.lang.NullPointerException
- Hibernate查询,无数据正常,有数据出现java.lang.NullPointerException 异常
- 在Servlet使用getServletContext()获取ServletContext对象出现java.lang.NullPointerException(空指针)异常的解决办法
- An internal error occurred during: "Launching spanking". java.lang.NullPointerException 安卓eclipse出现
- JSP页面中出现的一个异常:org.apache.jasper.JasperException: java.lang.NullPointerException
- android在fragment中实现onTouchEvent办法出现的java.lang.NullPointerException
- Android 开发中出现java.lang.NullPointerException
- jsp-api.jar文件 与tomcat中同名包冲突出现 java.lang.NullPointerException
- cocos2dx导入到eclipse出现"C/C++ Indexer". java.lang.NullPointerException
- 使用Eclipse开发Android出现java.lang.NullPointerException错误的解决方法
- 重新打开Eclipse出现java.lang.NullPointerException的问题解决
- 出现java.lang.NullPointerException此类错误
- 使用myeclipse启动tomcat时出现这种错误“Could not publish to the server. java.lang.NullPointerException”
- Hibernate查询,数据库中无数据正常,有数据出现java.lang.NullPointerException 空指针异常
- 在Servlet使用getServletContext()获取ServletContext对象出现java.lang.NullPointerException(空指针)异常的解决办法
- cocos2dx导入到eclipse出现"C/C++ Indexer". java.lang.NullPointerException
- cocos2dx导入到eclipse出现"C/C++ Indexer". java.lang.NullPointerException
- 出现 java.lang.NullPointerException 的一个案例
- 在Servlet使用getServletContext()获取ServletContext对象出现java.lang.NullPointerException(空指针)异常的解决办法