大家看一下,这样写有必要吗?if(bean.getGiftName()!=null&&!bean.getGiftName().equals("")){
giftNameTV.setText(bean.getGiftName());
}还是不做非空判断了,直接来?
giftNameTV.setText(bean.getGiftName()哪一种代码比较好呢?
我试了一下,
String str=null;
textView.setText(str);
程序不会报空指针的。Java空指针

解决方案 »

  1.   

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

  2.   


    我的业务逻辑很简单,把一个Activity需要显示的内容封装在了一个类中,然后使用textView.setText()来显示这些内容。上述代码中giftNameTV是一个TextView,bean就是那个封装好的类的对象。
      

  3.   

    textView.setText(str);这个肯定不会报空啊   就相当于你textView.setText(null);当你需要引用这个str时,就需要判断了,因为你引用了它的方法都报空的鉴于你的情况,可以不做判断,但是最好加上,当为空时,做些其他操作来提示。
      

  4.   

    我的业务逻辑很简单,把一个Activity需要显示的内容封装在了一个类中,然后使用textView.setText()来显示这些内容。上述代码中giftNameTV是一个TextView,bean就是那个封装好的类的对象。
    在bean里面一般不需要加,但是你在使用时,一般会加上判空处理。