Lambda - Ausdrücke verstehen

Maultäschle

Aktives Mitglied
Hallo Leute,
was bedeutet der Ausdruck (mit Kommentar versehen)?

Danke im Voraus 🙂

Java:
/**
    *
    * Methode zu (String[] s) -> {return (s != null) ? s.length : 0;};
    *
    * @param s
    * @Return
    */
    public static int arrayLength(String[] s) {
        return (s != null) ? s.length : 0; // dieser Ausdruck?
    }
}
 
Zuletzt bearbeitet von einem Moderator:
Das ist kein Lambda-Ausdruck!
Das ist der ternäre Operator. Ein If/Else mit Werterückgabe. Dein Programm ist äquivalent zu:
Java:
/**
*
* Methode zu (String[] s) -> {return (s != null) ? s.length : 0;};
*
* @param s
* @Return
*/
public static int arrayLength(String[] s) {
    if(s != null){
         return s.length;
    else{
         return 0;
    }
}
https://javabeginners.de/Schleifen_und_Verzweigungen/Ternaerer_Operator.php
http://openbook.rheinwerk-verlag.de...tml#dodtpdc9312f1-8169-4dd3-932b-26e9ef01812e
EDIT: zumindest der fett-markierte-Teil ist kein Lambda-Ausdruck...
 

Zurück
Oben