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());