次の方法で共有


ブール式 (Visual Basic)

ブール式は、ブール型 (TrueまたはFalse) の値に評価される式です。 Boolean 式は複数の形式をとることができます。 最も簡単なのは、次の例に示すように、 Boolean 変数の値を Boolean リテラルと直接比較することです。

If newCustomer = True Then
    ' Insert code to execute if newCustomer = True.
Else
    ' Insert code to execute if newCustomer = False.
End If

= 演算子の 2 つの意味

代入ステートメント newCustomer = True は前の例の式と同じように見えますが、異なる関数を実行し、異なる方法で使用されていることに注意してください。 前の例では、式 newCustomer = True はブール値を表し、 = 記号は比較演算子として解釈されます。 スタンドアロン ステートメントでは、 = 記号は代入演算子として解釈され、右側の値が左側の変数に割り当てられます。 次に例を示します。

If newCustomer = True Then
    newCustomer = False
End If

詳細については、「 値の比較とステートメント」を 参照 してください

比較演算子

=<><><=>=などの比較演算子は、演算子の左側の式を演算子の右側の式と比較し、結果をTrueまたはFalseとして評価することによってブール式を生成します。 次に例を示します。

42 < 81

42 は 81 未満であるため、前の例のブール式は Trueに評価されます。 この種の式の詳細については、「値の 比較」を参照してください。

比較演算子と論理演算子の組み合わせ

論理演算子を使用して比較式を組み合わせて、より複雑なブール式を生成できます。 次の例では、論理演算子と共に比較演算子を使用する方法を示します。

x > y And x < 1000

前の例では、式全体の値は、 And 演算子の各側の式の値によって異なります。 両方の式が Trueされている場合、式全体が Trueに評価されます。 いずれかの式が Falseされている場合、式全体が Falseに評価されます。

Short-Circuiting 演算子

論理演算子AndAlsoし、OrElseショートサーキットと呼ばれる動作を示します。 ショートサーキット演算子は、最初に左オペランドを評価します。 左オペランドが式全体の値を決定する場合、プログラムの実行は右の式を評価せずに続行されます。 次に例を示します。

If 45 < 12 AndAlso testFunction(3) = 81 Then
    ' Add code to continue execution.
End If

前の例では、演算子は左の式 ( 45 < 12) を評価します。 左の式は Falseに評価されるため、論理式全体が False評価される必要があります。 したがって、プログラムの実行は、適切な式 (testFunction(3)) を評価することなく、If ブロック内のコードの実行をスキップします。 この例では、左の式によって式全体が改ざんされるため、 testFunction() は呼び出されません。

同様に、 OrElse を使用する論理式の左式が Trueに評価された場合、左の式は式全体を既に検証しているため、右の式を評価せずに次のコード行に実行が進みます。

非Short-Circuiting 演算子との比較

これに対し、論理演算子の両側は、論理演算子 AndOr が使用されるときに評価されます。 次に例を示します。

If 45 < 12 And testFunction(3) = 81 Then
    ' Add code to continue execution.
End If

前の例では、左の式がFalseに評価される場合でも、testFunction()を呼び出します。

かっこで囲まれた式

かっこを使用して、ブール式の評価順序を制御できます。 かっこで囲まれた式は、最初に評価されます。 複数レベルの入れ子の場合、最も深く入れ子になった式に優先順位が付与されます。 かっこ内では、演算子の優先順位の規則に従って評価が続行されます。 詳細については、「 Visual Basic での演算子の優先順位」を参照してください。

こちらも参照ください