SORU
24 Temmuz 2014, PERŞEMBE


-≫ <- operatör?

Geçenlerde aşağıdaki kodu üzerine geldi

IntPredicate neg = x -> x <- x;

Bu, ters çift lambda çeşit nedir?

CEVAP
24 Temmuz 2014, PERŞEMBE


-> <- operatör yok. İlk -> sadece lambda sözdizimi olarak sunulan Java 8 ve ikinci <- yanıltıcı birleştirme 'küçüktür' < ve 'tekli eksi' -.

Sen-ebilmek okumak gibi IntPredicate neg = (x) -> (x < (-x));, yani bu testleri ister x daha küçük -x olan dava için tüm (iyi, most) negatif sayılar, bu nedenle adı neg.

IntPredicate neg = x -> x <- x;
System.out.println(neg.test(4));   // false
System.out.println(neg.test(0));   // false
System.out.println(neg.test(-4));  // true

Sadece bütünlüğü için: Bu test sadece (kasıtlı?) yorum -- belirttiği gibi anlamak zor, ama aynı zamanda Integer.MIN_VALUE ==-Integer.MIN_VALUE () başarısız. Bunun yerine, muhtemelen çok daha basit IntPredicate neg = x -> (x < 0); kullanmalısınız.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Caramthros

    Caramthros

    10 AĞUSTOS 2007
  • funbro1

    funbro1

    11 Aralık 2007
  • JamesAtiPhone

    JamesAtiPhon

    16 EYLÜL 2010