Sobes.tech
Junior — Middle

Ar turite praktinės patirties naudojant Java 8 pristatytas funkcijas ir naujas galimybes?

sobes.tech AI

Atsakymas iš AI

Taip, Java 8 buvo įvestos svarbios naujos galimybės, kurios žymiai supaprastino ir patobulino kodą:

  • Lambda išraiškos — leidžia rašyti kompaktiškas anonimines funkcijas, kas palengvina darbą su funkcionaliais interfeisais.

  • Stream API — suteikia patogų būdą apdoroti duomenų rinkinius funkcionaliu stiliumi (filtravimas, transformavimas, agregavimas).

  • Numatytosios metodai interfeisuose — leidžia pridėti metodų įgyvendinimus interfeisų be pažeidžiant esantį kodą.

  • Optional — klasė darbui su galimu trūkstamu reikšme, padeda išvengti NullPointerException.

Pavyzdys naudojant Stream ir 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]
    }
}