filter metodu Optional dolu ise ve predicate true ise dolu Optional döner, aksi halde boş Optional döner. Açıklaması şöyle.
If a value is present and it also matches the given predicate, then it returns an Optional describing the value. Otherwise, it returns an empty Optional.Örnek - Metod Sonucunda Kullanma
Eskiden şöyle yapardık
Şimdi şöyle yapıyoruzpublic Optional<String> getPersonName() {Person person = getPerson();if (ALLOWED_NAMES.contains(person.getName())) {return Optional.ofNullable(person.getName());}return Optional.empty();}
Örnekpublic Optional<String> getPersonName() {Person person = getPerson(); return Optional.ofNullable(person.getName()) .filter(ALLOWED_NAMES::contains); }
Şöyle yaparız
a.filter(o -> b && c).ifPresent(list::add);
Hiç yorum yok:
Yorum Gönder