避免对setters Java执行空检查

亚历克斯:

我有Employee类,并且正在设置其属性,

Employee emp = new Employee();
if (id != null)
    emp.setId(id);
if (name != null)
    emp.setName(name);
if (dept != null)
    emp.setDepartment(dept);
if (subDept != null)
    emp.setSubDepartment(subDept);

我的问题是,我们可以避免对每个属性设置器进行空检查吗?

我不能使用三元运算符,因为在这种情况下,即使value为null也将调用setter。我想避免setter调用,如果value为null。

emp.setName(name!=null?name:null);
雷纳托:

其实,在你的代码,检查空是没有必要的:在每一个案件,因为你刚刚创建的员工对象,他的所有字段为空,那么如果,例如,id不为null setId会设置一个不为空值,如果idnullsetId不会改变任何东西。

显然,只有在构造函数未以任何方式初始化变量的情况下,这些注意事项才有意义。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章