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]
}
}