# Logical Operators Within Conditionals

**If**
statements
test whether a condition is true. Often you will want to test whether
two conditions are both true, or only one is True, or neither is
True. VB.NET provides a set of logical operators for this, as shown
in Table 3-3. This table assumes two variables, x
and y, in which x has the value 5, and y the value 7.

Table 3-3. Logical operators (assumes x = 5 and y = 7)

Operator |
Given this statement: |
The expressionevaluates to: |
Logic |
---|---|---|---|

And |
x = 3 And y = 7 |
False |
Both must be true to evaluate true. |

Or |
x = 3 Or y = 7 |
True |
Either or both must be true to evaluate true. |

XOr |
X = 5 XOr y = 7 |
False |
True only if one (and only one) statement is true. |

Not |
Not x = 3 |
True |
Expression must be false to evaluate true. |

The `And`

operator tests whether two statements
are both true. The first line in Table 3-3
includes an example that illustrates the use of the
`And`

operator:

x = 3 And y = 7

The entire expression evaluates false because one side (`x = 3`

) is false. (Remember that x = 5 and y = 7.)

With the `Or`

operator, either or both sides must be
true; the expression is false only if both sides are false. So, in
the case of the example in Table 3-3:

x = 3 Or y = 7

the entire expression evaluates true because one side (`y = 7`

) is true.

The `XOr`

logical operator (which stands for
eXclusive Or) is used to test if one
(and only one) of the two statements is correct. Thus, the example
from Table 3-3:

x = 5 XOr y = 7

evaluates false because both statements ...

Get *Programming Visual Basic .NET, Second Edition* now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.