我有以下方法:
private void setClientAdditionalInfo(Map map, Client client, User user) {
Map additionalInfo = (Map) map.get("additionalInfo");
if (checkMapProperty(additionalInfo, "gender")) {
client.setGender(additionalInfo.get("gender").toString());
}
if (checkMapProperty(additionalInfo, "race")) {
client.setRace(additionalInfo.get("race").toString());
}
if (checkMapProperty(additionalInfo, "ethnicity")) {
client.setEthnicity(additionalInfo.get("ethnicity").toString());
}
.....
如果语句以类似的方式使用,则会增加12个.唯一的区别是不同的setter方法名称和不同的参数.
现在,由于一次又一次地重复相同的模式,有没有办法降低代码复杂度?