Operator 演算子

||(_:_:)

Performs a logical OR operation on two Boolean values. 論理OR(和)演算を2つのブール値で実行します。

Declaration 宣言

static func || (lhs: Bool, rhs: @autoclosure () throws -> Bool) rethrows -> Bool

Parameters パラメータ

lhs

The left-hand side of the operation. 演算子の左手側。

rhs

The right-hand side of the operation. 演算子の右手側。

Discussion 解説

The logical OR operator (||) combines two Boolean values and returns true if at least one of the values is true. If both values are false, the operator returns false. 論理OR演算子(||)は、2つのブール値を組み合わせて、trueを値の少なくとも1つがtrueならば返します。両方の値がfalseならば、演算子はfalseを返します。

This operator uses short-circuit evaluation: The left-hand side (lhs) is evaluated first, and the right-hand side (rhs) is evaluated only if lhs evaluates to false. For example: この演算子は、短絡評価を使います:左手側(lhs)が最初に評価されます、そして右手側(rhs)はlhsfalseに評価する場合にのみ評価されます。例えば:


let majorErrors: Set = ["No first name", "No last name", ...]
let error = ""


if error.isEmpty || !majorErrors.contains(error) {
    print("No major errors detected")
} else {
    print("Major error: \(error)")
}
// Prints "No major errors detected"

In this example, lhs tests whether error is an empty string. Evaluation of the || operator is one of the following: この例において、lhserrorが空の文字列かどうかテストします。||演算子の評価は、次のうちの1つです:

  • When error is an empty string, lhs evaluates to true and rhs is not evaluated, skipping the call to majorErrors.contains(_:). The result of the operation is true. errorが空の文字列である時、lhstrueに評価して、rhsは評価されず、majorErrors.contains(_:)への呼び出しを省きます。この演算の結果は、trueです。

  • When error is not an empty string, lhs evaluates to false and rhs is evaluated. The result of evaluating rhs is the result of the || operation. errorが空の文字列ではない時、lhsfalseに評価して、rhsは評価されます。rhsを評価することの結果は、||演算の結果です。

See Also 参照

Transforming a Boolean ブールを変換する