如何在java中检查getter方法的null

时间:2013-01-10 11:07:18

标签: java

我有一个POJO课程。

class Activity{
   private String name;

   public String getName()
      return name;
   }

   public void setName(String name){
      this.name=name;
   }
}

我有相关的条件。因此,在这些条件中没有恰当地适应

 if(stlmtTransRequestVO.getStlmtTransId()!=null && stlmtTransRequestVO.getPaymentTransId()!=null){
stlmtTransDtlsList = (List<StlmtTransResponseVO>) queryForList(
        "GET_STLMTPAY_TRANSACTIONS", stlmtTransRequestVO);


 }else if(stlmtTransRequestVO.getAgentId()!=null && stlmtTransRequestVO.getAgencyId()==null){
stlmtTransDtlsList = (List<StlmtTransResponseVO>) queryForList(
        "GET_AGENT_TRANSACTIONS", stlmtTransRequestVO);

 }else if(stlmtTransRequestVO.getAgencyId()!=null && stlmtTransRequestVO.getAgentId()==null){
stlmtTransDtlsList = (List<StlmtTransResponseVO>) queryForList(
        "GET_AGENCY_TRANSACTIONS", stlmtTransRequestVO);

 }else if(stlmtTransRequestVO.getAgencyId()!=null && stlmtTransRequestVO.getAgentId()!=null){

}

如何检查此getter方法是否有数据?

我尝试了以下方案,但没有工作

   1) obj.getName()!=null
   2) obj.getName().isEmpty()

6 个答案:

答案 0 :(得分:10)

obj.getName() != null是对的。但这取决于您对“拥有数据”的定义。它可能是:object.getName() != null && !obj.getName().isEmpty()

有一些实用工具可以帮助实现这一目标,例如apache commons-lang StringUtils.isNotEmpty(..)

答案 1 :(得分:5)

if( obj.getName() != null && !"".equals(obj.getName()) ){
   //getName is valid
} 

以上是检查名称不为空,而且不为空。同样“”。equals(obj.getName())被认为是比 obj.getName()。equals(“”)更好的方法。

答案 2 :(得分:2)

像这样初始化:

private String name = "";

然后您可以查看:

obj.getName().isEmpty();

答案 3 :(得分:1)

您的第一次检查是正确的。修改您的第二张支票如下:

obj.getName().equals("");

答案 4 :(得分:0)

Name是一个String对象,用于检查它是否没有数据执行此操作:

obj.getName() != null;
obj.getName.equals("");

答案 5 :(得分:0)

在String

的情况下始终使用StringUtils.isEmpty