# Dart Programming - Logical Operators

## Example

The following example shows how you can use Logical Operators in Dart −

```void main() {
var a = 10;
var b = 12;
var res = (a<b)&&(b>10);
print(res);
}
```

It will produce the following output

```true
```

## Example

Let’s take another example −

```void main() {
var a = 10;
var b = 12;
var res = (a>b)||(b<10);

print(res);
var res1 =!(a==b);
print(res1);
}
```

It will produce the following output

```false
true
```

## Short-circuit Operators (&& and ||)

The && and || operators are used to combine expressions. The && operator returns true only when both the conditions return true.

Let us consider the following expression −

```var a = 10
var result = (a<10 && a>5)
```

In the above example, a<10 and a>5 are two expressions combined by an && operator. Here, the first expression returns false. However, the && operator requires both the expressions to return true. So, the operator skips the second expression.

The || operator returns true if one of the expressions returns true. For example −

```var a = 10
var result = ( a>5 || a<10)
```

In the above snippet, two expressions a>5 and a<10 are combined by a || operator. Here, the first expression returns true. Since, the first expression returns true, the || operator skips the subsequent expression and returns true.

Due to this behavior of the && and || operator, they are called as short-circuit operators.

dart_programming_operators.htm