Sobes.tech
Junior — Middle

Czy masz praktyczne doświadczenie w korzystaniu z funkcji i nowych możliwości wprowadzonych w Java 8?

sobes.tech AI

Odpowiedź od AI

Tak, w Java 8 pojawiły się ważne nowe funkcje, które znacznie uprościły i ulepszyły kod:

  • Wyrażenia lambda — pozwalają na pisanie kompaktowych funkcji anonimowych, co ułatwia pracę z interfejsami funkcyjnymi.

  • API Stream — zapewnia wygodny sposób przetwarzania kolekcji danych w stylu funkcyjnym (filtracja, transformacja, agregacja).

  • Metody domyślne w interfejsach — pozwalają na dodawanie implementacji metod w interfejsach bez naruszania istniejącego kodu.

  • Optional — klasa do pracy z możliwym brakiem wartości, pomaga unikać NullPointerException.

Przykład użycia Stream i lambda:

import java.util.*;
import java.util.stream.*;

public class Example {
    public static void main(String[] args) {
        List<String> names = Arrays.asList("Anna", "Bob", "Charlie", "David");
        List<String> filtered = names.stream()
            .filter(name -> name.startsWith("A"))
            .map(String::toUpperCase)
            .collect(Collectors.toList());

        System.out.println(filtered); // [ANNA]
    }
}