我有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。如果值为null,我想避免setter调用。
emp.setName(name!=null?name:null);
我有Employee类,并且正在设置其属性,Employee emp = new Employee();如果(id!= null)emp.setId(id);如果(name!= null)emp.setName(name); if(dept!= null)emp ....
实际上,在您的代码中,不需要检查null:在每种情况下,由于您刚刚创建了employee对象,因此他的所有字段均为null,然后,例如,如果id不为null,则setId
将设置一个not空值,如果id为null
,则设置的id将不会更改任何内容。