Erste Schritte Ausdruck schöner schreiben?

lam_tr

Top Contributor
Hallo zusammen,

ich habe diese Schreibweise schon oft benutzt, bin mir nicht sicher ob das schön ist, aber irgendwas stört da. Hat mir jemand eine schönere Variante für mich?

Ich will einen Wert über die Methode holen, wenn es null ist soll ein Default Wert gesetzt werden. Optional kann ich in der Modell-Klasse ein Default Initialisierung machen.

Code:
String modelName = view.getModel().getName();
modelName = modelName == null ? "Noname" : modelName;

Grüße
lam
 
Eigentlich suchst du einen coalesce-Operator, aber den gibt es in Java nicht.

Ggf. kannst du mal danach googlen, vielleicht gibt es Hilfsmethoden oder sowas.

Edit: Habe gerade den Ansatz gefunden
Java:
String modelName = Optional.ofNullable(view.getModel().getName()).orElse("Noname");
 
Zuletzt bearbeitet:
Eigentlich suchst du einen coalesce-Operator, aber den gibt es in Java nicht.

Ggf. kannst du mal danach googlen, vielleicht gibt es Hilfsmethoden oder sowas.

Edit: Habe gerade den Ansatz gefunden
Java:
String modelName = Optional.ofNullable(view.getModel().getName()).orElse("Noname");
Stimmt ich benutze so oft Optional aber orElse wird bisher nicht von mir betrachtet. Super ich danke dir.
 
Wieso wird die Logik nicht nicht im Model abgehandelt? Wenn Du feststellst, dass getName() mit dem null Wert nicht ok ist, dann mach ein getNameOrDefault() die Du dann aufrufen kannst und dann ist der Default Wert auch als Konstante im Model?

Oder um was genau geht es da? Die Frage ist ja, was für Werte da wie verwendet werden um zu entscheiden, wo die Logik wirklich hin gehört ...
 
Wieso wird die Logik nicht nicht im Model abgehandelt? Wenn Du feststellst, dass getName() mit dem null Wert nicht ok ist, dann mach ein getNameOrDefault() die Du dann aufrufen kannst und dann ist der Default Wert auch als Konstante im Model?

Oder um was genau geht es da? Die Frage ist ja, was für Werte da wie verwendet werden um zu entscheiden, wo die Logik wirklich hin gehört ...
Das Model ist eine reine Pojo Klasse, ich denke an der Stelle finde ich das mit Optional schon etwas eleganter. Danke.
 

Zurück
Oben