Junior — Middle
Μπορείς να δώσεις ένα παράδειγμα μεθόδων μετατροπής δεδομένων μέσα στο API Stream;
sobes.tech AI
Απάντηση από AI
Στην API Stream (π.χ. στη Java), οι μέθοδοι μετασχηματισμού δεδομένων επιτρέπουν τη δημιουργία νέων ροών με βάση υπάρχουσες, με τροποποιημένα στοιχεία. Παραδείγματα τέτοιων μεθόδων:
- map() — εφαρμόζει μια συνάρτηση σε κάθε στοιχείο και επιστρέφει μια ροή μετασχηματισμένων στοιχείων.
- filter() — φιλτράρει στοιχεία βάσει μιας δοθείσας συνθήκης.
- flatMap() — μετατρέπει κάθε στοιχείο σε ροή και ενώνει όλες τις ροές σε μία.
- distinct() — αφαιρεί διπλότυπα.
- sorted() — ταξινομεί τα στοιχεία.
Παράδειγμα:
List<String> ονόματα = Arrays.asList("Anna", "Bob", "Charlie", "David");
List<String> φιλτραρισμέναΟνόματα = ονόματα.stream()
.filter(όνομα -> όνομα.startsWith("A")) // διατηρεί ονόματα που ξεκινούν με 'A'
.map(String::toUpperCase) // μετατρέπει σε κεφαλαία
.collect(Collectors.toList());
System.out.println(φιλτραρισμέναΟνόματα); // [ANNA]