Sobes.tech
Middle

Τι είναι οι εκφράσεις lambda στη Java και ποιο ρόλο παίζουν;

sobes.tech AI

Απάντηση από AI

Οι εκφράσεις lambda στην Java είναι ανώνυμες συναρτήσεις που επιτρέπουν τη μετάδοση κώδικα ως δεδομένα.

Ο ρόλος των εκφράσεων lambda:

  • Απλοποίηση κώδικα: Επιτρέπουν τη συγγραφή πιο σύντομου και ευανάγνωστου κώδικα, ειδικά όταν εργάζεστε με λειτουργικές διεπαφές.
  • Λειτουργικός προγραμματισμός: Υποστηρίζουν το παράδειγμα του λειτουργικού προγραμματισμού στην Java, καθιστώντας το πιο ευέλικτο.
  • Βελτίωση εργασίας με συλλογές: Χρησιμοποιούνται στο API Stream για λειτουργίες όπως φιλτράρισμα, χαρτογράφηση και μείωση.
  • Μείωση κώδικα boilerplate: Αντικαθιστούν σε πολλές περιπτώσεις τις ανώνυμες εσωτερικές κλάσεις.

Παράδειγμα:

// Χρήση ανώνυμης εσωτερικής κλάσης
Runnable classicRunnable = new Runnable() {
    @Override
    public void run() {
        System.out.println("Γειά από τον παλιό τρόπο!");
    }
};

// Χρήση lambda
Runnable lambdaRunnable = () -> System.out.println("Γειά από το lambda!");
// Χρήση lambda με το API Stream για φιλτράρισμα
List<String> names = Arrays.asList("Alice", "Bob", "Charlie", "David");
List<String> filteredNames = names.stream()
                                  .filter(name -> name.startsWith("A"))
                                  .collect(Collectors.toList());