Soweit ich sehen kann, ist der einzige Weg, um den elvis Operator zu verwenden ist mit Syntax wie folgt:Einschließen in den Elvis Operator?
foo = bar ?: return
ich neugierig war, ob jemand mit einer Art und Weise hat kommen Protokollierung zu umfassen, wie allgemein die Rückkehr benutzt (zumindest in meiner Erfahrung), wenn sich etwas nicht wie erwartet verhält.
jedoch die folgende Syntax ist ungültig:
foo = bar ?: {
Log.e(TAG, "Some error occurred.")
return
}
Natürlich könnte ich einfach tut die folgende,
foo = bar
if (foo == null) {
Log.e(TAG, "Some error occurred.")
return
}
aber ist es eine Möglichkeit, die auch mit dem Operator Elvis anmelden?
Ja, wir sind gleich. aber ich benutze 'Let'. Dein 'Return' sollte nach draußen gebracht werden, was klarer wird. –
Ich denke, das oder David Furmans Antwort sollte die akzeptierte sein. – marstran