调试的东西确实很烦,但要做出来肯定得耐心,细心谨慎。
前天项目什么都跑了一遍,没什么问题了,昨天再重新跑的时候,就出现空指针,崩溃啊!!
空指针问题代码比较容易找,log上哪行出错就找哪行,一般是值为空的问题。
最后坑爹的找到equals判断,经过打印System.out.println();两个值都能传过来。但还是跳空指针。
最后,乱填了值测试才知道,原来null.equals(xxx)编译会出错,现在总结下equals的用法,有写错的
地方,希望能指出,不胜感激。
==比较的是两个对象的地址
equals比较的是两个对象的内容
String str1=new String("apple");
String str2=new String("apple");
现在有两个Boolean型表达式:
①str1==str2;
②str1.equals(str2);
①false
②true
且用equals是应注意(常量).equals(变量)这样写避免出错比如xxx.equals(null)编译可通过,但null.equals(xxx)编译错误