我有以下方法,该方法迭代map,并根据迭代结果为局部变量DepartmentsFilter departmentFilter2分配值。 调试该表达式的每一行,我看到,在迭代进行的同时,departmentFilter2获取值。但是在返回阶段,它变为空。
private DepartmentsFilter getDepartmentFilter(Map<String, Object> parameters,
FilterBuilder<DepartmentsFilter> builder) {
DepartmentsFilter departmentsFilter2 = new DepartmentsFilter(null, null, null, null, null);
for (Map.Entry<String, Object> entry : parameters.entrySet()) {
departmentsFilter2 = (DepartmentsFilter) builder.buildFilter(entry, departmentsFilter2);
}
return departmentsFilter2;
}
答案 0 :(得分:1)
对于地图中的每个条目,您当前正在覆盖departmentsFilter2
。您获得的返回值对应于映射中的最后一个条目,该条目必须产生一个空departmentsFilter2
。
如果需要完整列表,请将每个departmentsFilter2
保存到列表中,然后返回列表。