Junior
რა არის ლამბდა გამოთქმები Java-ში?
sobes.tech AI
პასუხი AI-სგან
Java-ში ლამბდა გამოხატულება არის ანონიმური ფუნქციების (სახელის გარეშე ფუნქციების) მოკლე გამოსახვა. ისინი გამოიყენება ფუნქციონალურ ინტერფეისების მაგალითების შექმნისთვის.
ძირითადი კომპონენტები:
- პარამეტრების სია:
()დახურვები შეიცავს პარამეტრების სიის. თუ პარამეტრები არ არის, გამოიყენება ცარიელი დახურვები. - სროლა
->: გამოყოფს პარამეტრების სიის ლამბდა სხეულისგან. - სხეული: შეიძლება იყოს ერთი გამოთქმა ან კოდის ბლოკი ფიგურული დახურვებით
{}.
პარამეტრების გარეშე მაგალითი:
// ფუნქციონალური ინტერფეისი
@FunctionalInterface
interface Greeting {
void sayHello();
}
// ლამბდა გამოხატულების გამოყენება
Greeting greeting = () -> System.out.println("Hello, World!");
პარამეტრებით მაგალითი:
// ფუნქციონალური ინტერფეისი
@FunctionalInterface
interface MathOperation {
int operate(int a, int b);
}
// ლამბდა გამოხატულების გამოყენება
MathOperation addition = (a, b) -> a + b;
MathOperation subtraction = (a, b) -> {
return a - b;
};
უპირატესობები:
- სწრაფი: ამცირებს boilerplate კოდის მოცულობას.
- სარგებელი: გამოიყენება ერთად Stream API-სთან კოლექციების დამუშავებისთვის.
- ფუნქციონალური პროგრამირება: მხარს უჭერს ფუნქციონალურ პროგრამირების ელემენტებს Java-ში.
შეზღუდვები:
- შეიძლება გამოყენებულ იქნას მხოლოდ ფუნქციონალურ ინტერფეისებთან (ერთი აბსტრაქტული მეთოდით ინტერფეისები).
- არ შეიძლება ჰქონდეს სტატუსი (ანუ, არ შეუძლია შეცვალოს ცვლადები მის კონტექსტს გარეთ, თუ ეს ცვლადები აშკარად არ არის გამოყოფილი final ან effectively final სახით).
ლამბდა გამოხატულებები შემოვიდა Java 8-ში.