Я пытаюсь создать объект внутри потока, но я не хочу определять другой конструктор для объекта; Я хотел бы использовать установщиков для размещения значений там, где это необходимо. Это возможно?Создание нового объекта внутри потока и использование сеттеров
pe.setExts(pDTO.getExts().stream().map(s->new P(arg1, arg2, ..., arg12)))...;
Как вы можете видеть, у меня много аргументов, и некоторые из них требуют некоторой обработки. Я хочу избежать этой обработки, пока это не будет необходимо.
То, что я ищу, может быть что-то вроде этого (я не знаю, как написать функцию, я думаю, что анонимная функция будет здорово здесь):
pe.setExts(pDTO.getExts().stream().map(s->{
P p = new P();
s->setExt1(p.getExt1());
...
List<V> l = p.getExt12();
List<X> finalL = null;
[processing list l, populating finalL]
s->setExt12(finalL);
}));
Я думаю, что мои классы не должны знать друг о друге. Один из них - «P», а другой - объект передачи данных «PDTO». Выполняя свой путь, это означает создание третьего класса, который будет содержать этот метод преобразования. Другое дело, что я пытаюсь использовать этот поток внутри «PPDTOAdapter». Или я должен создать этот метод внутри адаптера и вызвать его оттуда? – tzortzik
Основываясь на вашем решении, я дал себе ответ в своем предыдущем комментарии. Спасибо! – tzortzik