当前位置: 代码迷 >> Android >> 关于编码规范的一个小疑点
  详细解决方案

关于编码规范的一个小疑点

热度:15   发布时间:2016-05-01 09:55:03.0
关于编码规范的一个小问题
大家看一下,这样写有必要吗?

if(bean.getGiftName()!=null&&!bean.getGiftName().equals("")){
giftNameTV.setText(bean.getGiftName());
}

还是不做非空判断了,直接来?
giftNameTV.setText(bean.getGiftName()


哪一种代码比较好呢?
我试了一下,
String str=null;
textView.setText(str);

程序不会报空指针的。
Java 空指针

------解决方案--------------------
我觉得,这得看你的业务逻辑。
如果你的类是一个数据类,如MediaItem,它的内部字段如mText允许出现空(null或者""),那你可以不需要进行set时的判断。反之,你可以加上判空处理。

另外,字符串的判空处理可以使用TextUtils.isEmpty(...)方法。
------解决方案--------------------
textView.setText(str);这个肯定不会报空啊   就相当于你textView.setText(null);

当你需要引用这个str时,就需要判断了,因为你引用了它的方法都报空的

鉴于你的情况,可以不做判断,但是最好加上,当为空时,做些其他操作来提示。
  相关解决方案