如何在Java中避免空指针异常2013-07-17 qiyadeng.com 空指针异常(Null Pointer Exception)是我们平时最容易碰到的,也是最令人讨厌的异常。本文介绍如何避免出现空指针异常。首先我们看如下的示例
private Boolean isFinished(String status) { if (status.equalsIgnoreCase("Finish")) { return Boolean.TRUE; } else { return Boolean.FALSE; } }如果status的值为空的话,那么将会出现空指针异常(本例第2行)。所以我们应该使用如下的方法
private Boolean isFinished(String status) {if ("Finish".equalsIgnoreCase(status)) {return Boolean.TRUE;} else {return Boolean.FALSE;}}这样的话,如果status为空,也不会出现空指针异常。相信我们大多数朋友已经知道这样的方法了,如果一个对象可能为null,那么不需要直接调用它的方法。接下来我将接着提供几种避免空指针的建议。1.判断Collection是否为空。2.使用一些判断方法。3.assert关键字。4.Assert类。5.异常处理。6.太多的点.操作语法。7.使用StringUtils类1.判断Collection是否为空Collection 为空是指Collection中没有元素。一些开发者如果碰到Collection中没有元素的时候,经常return null,更好的做法是,你应该return Collections.EMPTY_LIST,Collections.EMPTY_SET或者是Collections.EMPTY_MAP.错误的代码
public static List getEmployees() { List list = null; return list; }正确的代码
public static List getEmployees() {List list = Collections.EMPTY_LIST;return list;}