[英]Using "?:" to emulate short-circuit evaluation
怎樣才能模擬foo() || bar()
foo() || bar()
和foo() && bar()
使用短路和?:
運算符?
我是一名學生,從未使用過?:
運算符,想嘗試一下。 在做了一些谷歌搜索后,我發現它本質上是:
Condition ? (things to do if true) : (things to do if false);
不使用&&
和||
是否可以實現? ? 我正在努力解決短路問題,因為我對它很陌生,決賽即將到來!
假設foo()
和bar()
都返回boolean
,那么
foo() || bar()
是相同的
foo() ? true : bar();
因為首先對foo()
求值,而bar()
僅在foo()
為 false 時才需要求值。
同樣地,
foo() && bar()
是相同的
foo() ? bar() : false;
foo()
首先被評估, bar()
只需要在foo()
為真時評估。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.