Sobes.tech
Junior — Middle

Можеш ли да дадеш пример за методи за преобразуване на данни в рамките на Stream API?

sobes.tech AI

Отговор от AI

В API за потоци (например, в 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]