Aktywne Wpisy
Mirkos2127 +39
Treść przeznaczona dla osób powyżej 18 roku życia...
adajpanspokoj320 +28
Jak myślicie, s--s bez p----------y z masażystka hotelowa w Tanzanii za 100$ to dobry pomysł, czy jednak źle zrobiłem?
#divyzwykopem #kiciochpyta #podroze
#divyzwykopem #kiciochpyta #podroze
źródło: temp_file1985486513310275420
Pobierz




Mirki, chcę zmapować w streamie pewne obiekty dodając do nich kilka informacji. Stworzyłem sobie rozszerzoną klasę o potrzebne pola:
Było:
class User{int id;
String name;
int age;
A teraz będzie:
class User2{int id;
String name;
int age;
boolean hasDog;
Date birthday;
}
Problem w tym, że aby ustawić hasDog i birthday - muszę pobrać z repozytorium dane i je przetworzyć.
Zrobiłem więc dwie metody: do ustawiania hasDog i birthday.
Mogę to zmapować tak:
List newUsers = oldUsers.getUsers.stream.map(u -> new User2(u.name, u.age, hasUserDog(u.id), setBirthday(u.id)).collect(toList());Problem w tym, że w metodzie hasUserDog i setBirthday - pobieram te same dane (rekord dla użytkownika o danym id).
Czy można pobrać te dane w tym streamie -> a następnie je wrzucić do moich dwóch metod - tak, by nie pobierać dwa razy tego samego?
Z góry dzięki :)
Komentarz usunięty przez autora
oldUsers.getUsers.stream.map(fetchUser -> repo.findUser(int id).
map(u -> new User2(u.name, u.age, hasUserDog(fetchUser), setBirthday(fetchUser)).collect(toList()); - tak by raz pobrać dane z bazy i wrzucić do tych dwóch metod to samo. Macie jakiś pomysł?
oldusers.stream.foreach(WiecejInfo wiecejInfo -> repoWiecejInfo.getData(user.id)...) chciałbym pobrać raz te dane, zamiast robić to osobno w metodach