# Documentation

### This is machine translation

Translated by
Mouse over text to see original. Click the button below to return to the English verison of the page.

# and, &

Find logical AND

## Syntax

• ``A & B``
example
• ``and(A,B)``

## Description

example

````A & B` performs a logical AND of arrays `A` and `B` and returns an array containing elements set to either logical 1 (`true`) or logical 0 (`false`). An element of the output array is set to logical 1 (`true`) if both `A` and `B` contain a nonzero element at that same array location. Otherwise, the array element is set to 0.```
````and(A,B)` is an alternate way to execute `A & B`, but is rarely used. It enables operator overloading for classes.```

## Examples

collapse all

Find the logical AND of two matrices. The result contains logical `1` (`true`) only where both matrices contain nonzero values.

```A = [5 7 0; 0 2 9; 5 0 0] ```
```A = 5 7 0 0 2 9 5 0 0 ```
```B = [6 6 0; 1 3 5; -1 0 0] ```
```B = 6 6 0 1 3 5 -1 0 0 ```
```A & B ```
```ans = 3×3 logical array 1 1 0 0 1 1 1 0 0 ```

Create a truth table for `and`.

```A = [true false] ```
```A = 1×2 logical array 1 0 ```
```B = [true; false] ```
```B = 2×1 logical array 1 0 ```
```C = A&B ```
```C = 2×2 logical array 1 0 0 0 ```

## Input Arguments

collapse all

Left operand, specified as a scalar, vector, matrix, or multidimensional array. Inputs `A` and `B` must either be the same size or have sizes that are compatible (for example, `A` is an `M`-by-`N` matrix and `B` is a scalar or `1`-by-`N` row vector). For more information, see Compatible Array Sizes for Basic Operations.

Data Types: `single` | `double` | `int8` | `int16` | `int32` | `int64` | `uint8` | `uint16` | `uint32` | `uint64` | `logical`

Right operand, specified as a scalar, vector, matrix, or multidimensional array. Inputs `A` and `B` must either be the same size or have sizes that are compatible (for example, `A` is an `M`-by-`N` matrix and `B` is a scalar or `1`-by-`N` row vector). For more information, see Compatible Array Sizes for Basic Operations.

Data Types: `single` | `double` | `int8` | `int16` | `int32` | `int64` | `uint8` | `uint16` | `uint32` | `uint64` | `logical`

collapse all

### Tall Array Support

This function fully supports tall arrays. For more information, see Tall Arrays.

### Tips

• You can chain together several logical operations, for example, `A & B | C`.

• The symbols `&` and `&&` perform different operations in MATLAB®. The element-wise AND operator described here is `&`. The short-circuit AND operator is `&&`. See ```Logical Operators: Short Circuit``` for more information.