Kurz erklärt
Eine kompakte, namenlose Funktion (seit Java 8) — ersetzt in vielen Fällen eine ausführliche Anonymous Class, wenn nur eine einzige Methode implementiert werden muss.
Genauer
Syntax: (parameter) -> ausdruck bzw. (parameter) -> { anweisungen }. Funktioniert nur mit "funktionalen Interfaces" (Interfaces mit genau einer abstrakten Methode, z. B. Runnable, Comparator). Häufig kombiniert mit der Streams-API, um Collections kompakt zu filtern, transformieren oder sortieren.