List<MyObject> list = new ArrayList<MyObject>()
Powiedzmy, że MyObject ma pole jak np. id albo name.
Jak najlepiej taką listę przeszukiwać np. po id czy name, albo po jednym i drugim? Zwykły for each i if? Nie brzmi to za dobrze.
List<MyObject> list = new ArrayList<MyObject>()
Powiedzmy, że MyObject ma pole jak np. id albo name.
Jak najlepiej taką listę przeszukiwać np. po id czy name, albo po jednym i drugim? Zwykły for each i if? Nie brzmi to za dobrze.
Strumienie w Java 8:
myList.stream().filter(el -> el.getName().equals("Krwawy Kot"))...;
Doskonały kod, milordzie!
Nawet z && działa. Dzięki.
Alternatywa to rozumiem Guava, która potrafi wyglądać obszerniej niz for z ifem...
Czytelniej jest złożyć kilka razy .filter() (możesz zrobić stream().filter(...).filter(...).collect(...)
) niż ładować skomplikowany warunek z && ;) W ogóle najlepiej zrobić z każdego warunku metodę o sensownej nazwie bo potem lepiej sie czyta kod.
O, bardzo koszernie! Dzieki.