Java检查非空的三种方法总结
作者:yqs_281876918
这篇文章主要介绍了Java检查非空的三种方法总结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
如果对空的对象进行操作,就会造成意外错误。所以我们在使用对象前,一般会进行非空判断
接下来介绍我知道的三种判断非空方法:
1、if判断
这个最直接,很多人应该都是这么用的
public class Main { public static void main(String[] args) { Object obj=null; if(obj!=null) { System.out.println("执行接下来的代码"); } } }
不必多言
2、Objects.requireNonNull(obj)
public class Main { public static void main(String[] args) { Object obj=null; Objects.requireNonNull(obj); System.out.println("执行接下来代码"); } }
我们将需要判断非空的对象传入Objects.requireNonNull()方法,如果此时对象为空,则会抛出一个NullPointerException异常,后面的代码就不会执行下去了,避免了非法操作。
3、断言 assert
public class Main { public static void main(String[] args) { Object obj=null; assert obj!=null; System.out.println("执行接下来代码"); } }
断言语句后面跟着一个表达式,如果表达式为true则继续往下执行,否则抛出一个AssertionError异常。
但是有的小伙伴执行这段代码可能不会报错,这是因为我们所用的开发环境并没有启动断言机制,所以没生效,我们需要添加一个JVM参数,叫做-ea。
接下来我以IDEA为例说一下怎么添加JVM参数。
先打开如图设置
点击Modify options,确保Add VM options这一项打开着
然后我们在这一栏填上-ea,点ok保存就可以了。
这个-ea是干嘛的呢,它的意思就是启动断言机制。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。