Junior — Middle
Lambda ifadəsi, təyin olunduğu metod daxilində elan edilmiş dəyişənə daxil ola bilərmi?
sobes.tech Süni İntellekt
AI-dan cavab
Java-da lambda ifadəsi, metodda elan olunan yerli dəyişkənə yalnız bu dəyişkən effektiv olaraq son isə daxil ola bilər. Bu, dəyişkənin ilkinləşdirildikdən sonra dəyərinin dəyişmədiyi anlamına gəlir.
Nümunə:
public void nümunə() {
int nömrə = 10; // effektiv olaraq son dəyişkən
Runnable r = () -> System.out.println(nömrə);
r.run();
}
Əgər lambda-dan sonra nömrəni dəyişməyə çalışsanız, tərtibçi xəta verəcək.
Bu məhdudiyyət, lambda-nın daha sonra icra oluna biləcəyi və dəyişkən vəziyyət problemlərindən qaçınmaq üçün Java-nın bu cür dəyişkənlərin dəyişməz olmasını tələb etməsiylə əlaqədardır.