2017-04-09 36 views
7

yılında yansıma kullanarak değiştirilebilir Can nasıl yapılacağını anlamaya çünkü bir argümanı var.Ben IntelliJ Bu kodu var metod referans java

Bunu nasıl yapacağını bilen var mı?

Aşağıda gösterildiği gibi yöntem referansını ( here bakmak) uygulamak için kodunuzu değiştirebilirsiniz
+0

IntelliJ, bunun dönüştürülebileceğini söylerse, IntelliJ'e dönüştürmeyi yapmasını söyleyin… – Holger

cevap

13

:

return collection.stream().anyMatch(method::isAnnotationPresent); 

Temel olarak, Lambda ifade-isAnnotationPresent()yöntemtanımını sağlıyoruz (arasında Predicate için geçerli olan anyMatch yöntemi ve akıştan gelen değer otomatik olarak anyMatch yöntemine bir argüman olarak iletilecektir.

+0

haklısınız! Bunu bir çok kez yaptım, belki de yansımayı kullanıyorum çünkü her zaman olduğu gibi düşünemedim. Teşekkür ederim! – Motomine

+1

Yukarıdaki kod işe yaraydı mı? – developer

+0

Henüz deneyemediğim için hala yapıyorum ve şimdi başka bir problemi nasıl çözeceğimi bulmalıyım ama lambda ifadesini sizin tanımınızla değiştirdim ve mükemmel bir şekilde derledim. – Motomine