簡體   English   中英

使用“?:”模擬短路評估

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM