Sleepzy to Programmer Humor@lemmy.ml · 1 month agoElvisimagemessage-square35fedilinkarrow-up1161arrow-down110
arrow-up1151arrow-down1imageElvisSleepzy to Programmer Humor@lemmy.ml · 1 month agomessage-square35fedilink
minus-squaredev_null@lemmy.mllinkfedilinkarrow-up3·edit-228 days agoBecause it’s not one. Ternary operator is A ? B : C, Elvis operator is A ?: B. The same two characters are involved, but both the syntax and effect is different.
minus-squareAVincentInSpace@pawb.sociallinkfedilinkEnglisharrow-up2·27 days agoThe second one isn’t valid syntax in any programming language I’m familiar with. What does it do?
minus-squaredev_null@lemmy.mllinkfedilinkarrow-up4·27 days agoIt’s a shorthand for writing this: variable = if (input != null) input else default This is equivalent: variable = input ?: default
minus-squareAVincentInSpace@pawb.sociallinkfedilinkEnglisharrow-up2·edit-227 days agoHuh. Neat feature.
minus-squaredev_null@lemmy.mllinkfedilinkarrow-up2·edit-227 days agoIt’s in Kotlin and some other languages. C# has it but there it’s actually A ?? B.
Because it’s not one. Ternary operator is A ? B : C, Elvis operator is A ?: B. The same two characters are involved, but both the syntax and effect is different.
The second one isn’t valid syntax in any programming language I’m familiar with. What does it do?
It’s a shorthand for writing this:
variable = if (input != null) input else default
This is equivalent:
variable = input ?: default
Huh. Neat feature.
It’s in Kotlin and some other languages. C# has it but there it’s actually
A ?? B
.