在日常开发工作过程中,比较两个参数是否相等的情况非常多。这就需要用到xxx.equals()方法。
equals()方法是Object类里的方法,它不支持null.equals(xxx)的调用方式,如果调用者为null则会引发空指针错误。
在调用接口的时候,难免要对后台返回的参数进行一些参数的比较,如果后台返回的参数是null,通过此方式调用就会出现错误,这种bug的出现是不被允许的。
这里有两种方式可以避免这种情况发生:
一.调用之前先进行判断if(xxx!=null)然后在进行equals比较,一般参数的比较都要进行非空判断,以此来避免空指针的出现。
二.调用者与参数互换。
如A.equals(B)可改为B.equals(A),可将一直非空的参数作为调用者来使用。
若项目中有多处地方需要处理比较麻烦,推荐使用android studio插件阿里编码规约,对多处页面进行手动扫描。如有未知参数调用equals()方法,可进行一键翻转,非常方便。
Android如何避免equals()引发的空指针错误?
最新推荐文章于 2022-10-09 16:28:53 发布