Ruby-äquivalent zu Groovy ist Elvis (?:) operator?
Ich weiß, ich kann ohne Sie Leben, aber die Frage ist schon nervt mich.
Gibt es eine Ruby-idiom, das entspricht Groovy ist Elvis-operator (?:
)?
Im wesentlichen, ich möchte in der Lage sein, zu verkürzen diese
PARAM = ARGV[0] ? ARGV[0] : 'default'
Beziehungsweise
PARAM = 'default' unless PARAM = ARGV[0]
In etwas wie dieses
PARAM = ARGV[0] ?: 'default'
- mögliche Duplikate von Was macht ||= bedeutet in Ruby?
- Nur wenn Sie die Antwort bereits kennen :p
Du musst angemeldet sein, um einen Kommentar abzugeben.
Never mind 🙂 ich habe gerade die Antwort selbst nach der Feststellung, die Namen der Betreiber.
Vom hier:
(Muss sein, denn ich bin jonglieren mit 4 Sprachen jetzt so richtig, ich vergaß, ich könnte tun, dass in den ersten Platz.)
@params = @params || 5
kürzen kann man es@params ||= 5
@params || @params = 5
. stackoverflow.com/questions/995593/what-does-mean-in-ruby/...?:
und C#'s??
check für die NICHTIGKEIT. Ruby ' s||
Prüfungen für die Wahrheit-iness. Wenn Sie mit booleans, sagen wir malfoo = bar || true
und Sie erwarten, dasstrue
auf den Standardwert nur, wennbar
istnil
funktioniert es nicht. Wennbar
ist nichtnil
aberfalse
es wird immer noch standardmäßigtrue
.Nicht
PARAM = ARGV[0] ? ARGV[0] : 'default'
das gleiche wiePARAM = (ARGV[0] || 'default')
?