两款不错的AI代码补全插件

https://www.codota.comhttps://www.aixcoder.com

Objects.equals(a,b)和a.equals(b)

Objects.equals(a,b)解析首先查上源码:public static boolen equals(Object a,Object b){ return(a==b)||(a!=null&&a.equals(b))可以看到源码种有一个判空,以防止null值作为参数时报空指针异常。a.equals(b)解析a.equals(b)方法的源码:public static boolen equals(Object obj){ return(this==obj) }其并没有判空操作,当null值调用这个方法就会报空指针异常。因此才建议使用equals时常量放在前面调用,括号里写变量,或者使用Objects.equals方法