Java Метод возвращает нулевое значение - PullRequest
0 голосов
/ 19 июня 2020

У меня есть следующий метод, который выполняет итерацию карты и, основываясь на результате итераций, присваивает значения локальной переменной DepartmentsFilter sizesFilter2. Отлаживая каждую строку этого выражения, я вижу, что пока продолжается итерация, sizesFilter2 получает значения. Но на этапе возврата он становится нулевым.

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;
}

1 Ответ

1 голос
/ 19 июня 2020

Для каждой записи на карте вы в настоящее время переписываете departmentsFilter2. Возвращаемое значение, которое вы получаете, соответствует последней записи на карте, которая должна приводить к нулю departmentsFilter2.

Если вам нужен полный список, сохраните каждый departmentsFilter2 в список, а затем верните list вместо этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...