Bei der Erstellung der Unterlagen wurden KI Assistenten (insbesondere Claude aber ggf. auch ChatGPT, Ollama mit Gemma/LLama/Qwen oder OpenCode mit Kimi/Qwen/Deepseek...) unterstützend eingesetzt. Dies erfolgte insbesondere zur Unterstützung bei der Generierung von Grafiken (d. h. SVG Dateien), oder um sich Übersichtstabellen generieren zu lassen. Weiterhin wurde KI zur allgemeinen Qualitätssicherung eingesetzt. Inhalte, die ggf. von der KI vorgeschlagen wurden, wurden im Falle der Übernahme explizit validiert und angepasst.
Was sind Funktionen höherer Ordnung?
Was sind Lambda-Ausdrücke?
Was steht bei der funktionalen Programmierung im Vordergrund?
Eigenschaften von Functional Interfaces
Nennen Sie eine wesentliche Eigenschaft von Functional Interfaces. Geben Sie ein Beispiel für ein funktionales Interface in Java an.
Nennen Sie mind. drei Möglichkeiten ein funktionales Interface zu implementieren.
Was ist eine Methoden-Referenz? Worauf kann eine Methoden-Referenz verweisen? Beschreiben Sie das allgemeine Muster.
Typkompatibilität von Lambda-Ausdrücken
Die Methode forEach hat die folgende Signatur:
void forEach(Consumer<? super T> action);
Weiterhin sei gegeben:
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
Welche der folgenden Lambda-Ausdrücke kann ich an forEach übergeben?
names.forEach(name -> System.out.println(name));
names.forEach(name -> name.toUpperCase());
names.forEach(name -> { System.out.println(name); return name.toUpperCase(); });
names.forEach(name -> { System.out.println(name); return; });
Welche der folgenden Objekte kann ich an forEach übergeben?
Consumer<String> cs = name -> System.out.println(name);
Consumer<Object> co = name -> System.out.println(name);
Consumer<CharSequence> ccs = name -> System.out.println(name); // Hint String extends CharSequence
Welchem Zweck dient der Datentyp Optional?