Хотя другие были рады ответить на ваш вопрос в его нынешнем виде, позвольте мне сделать шаг назад и дать вам ответ, который вы не просили (но, возможно, ответ, который вы хотите): Вы не хотитесделай это.Операция потока не должна иметь побочных эффектов.То, что вы просите, - это именно потоковая операция, которая имеет побочный эффект изменения исходных объектов, поступающих в поток.Такой плохой стиль кода и может запутать тех, кто читает ваш код после вас.
Код, который у вас уже есть, решает вашу проблему гораздо лучше, чем любой объединенный потоковый конвейер.
То, что вы, возможно, захотитеЕсли у вас есть возможность изменить ваш POJO, это либо конструктор, который устанавливает a
в 0, если null
было получено из базы данных, либо метод, который делает это, который вы можете вызвать из list.forEach
:
list.forEach(MyObject::setAToZeroIfNull);
Дело не в том, если это лучшее место для преобразования нулей в ноль, а скорее в вопросы, чтобы лучше понять API потоковой передачи.
Это справедливо.В любом случае, я оставлю этот ответ для всех, кто заскочил.