SORU
31 Ocak 2014, Cuma


Nasıl bir metot bir yüklem inkar etmek

Java 8, örneğin: bir akış filtresi için bir referans yöntemi kullanabilirsiniz

Stream<String> s = ...;
int emptyStrings = s.filter(String::isEmpty).count();

Orada mevcut bir yadsınması olduğu yöntem bir referans oluşturmak için bir yoldur, yani gibi bir şey:

int nonEmptyStrings = s.filter(not(String::isEmpty)).count();

Aşağıdaki gibi not yöntem yaratabilir ama eğer FIRSATLAR sunulan benzer bir şey soracaktım.

static <T> Predicate<T> not(Predicate<T> p) { return o -> !p.test(o); }

CEVAP
18 Mart 2014, Salı


Statik satır içi kullanılacak yöntem ve referans için izin almak için aşağıdaki planlıyorum:

public static <T> Predicate<T> not(Predicate<T> t) {
    return t.negate();
}

örneğin

Stream<String> s = ...;
long nonEmptyStrings = s.filter(not(String::isEmpty)).count();

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Edge-CGI 3D Tutorials and more!

    Edge-CGI 3D

    11 HAZİRAN 2013
  • POGProductionz

    POGProductio

    27 NİSAN 2012
  • Videogamerz | Call of Duty

    Videogamerz

    5 NİSAN 2012