# 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.

# colon, :

Create vectors, array subscripting, and `for`-loop iterators

## Description

The colon is one of the most useful operators in MATLAB®. It can create vectors, subscript arrays, and specify `for` iterations.

The colon operator uses the following rules to create regularly spaced vectors for scalar values `i`, `j`, and `k`:

 `j:k` is the same as `[j,j+1,j+2,...,j+m]`, where `m = fix(k-j)`. In the case where both `j` and `k` are integers, this is simply `[j,j+1,...,k]`. This syntax returns an empty matrix when `j > k`. `j:i:k` is the same as `[j,j+i,j+2i, ...,j+m*i]`, where `m = fix((k-j)/i)`. This syntax returns an empty matrix when `i == 0`, `i > 0` and ```j > k```, or `i < 0` and ```j < k```.

If `i`, `j`, or `k` is an empty input, then the colon operator returns an empty 1-by-0 matrix. If you specify nonscalar arrays, MATLAB interprets `j:i:k` as `j(1):i(1):k(1)`.

You can use the colon to create a vector of indices to select rows, columns, or elements of arrays, where:

 `A(:,j)` is the `j`th column of `A`. `A(i,:)` is the `i`th row of `A`. `A(:,:)` is the equivalent two-dimensional array. For matrices this is the same as `A`. `A(j:k)` is `A(j), A(j+1),...,A(k)`. `A(:,j:k)` is `A(:,j), A(:,j+1),...,A(:,k)`. `A(:,:,k)` is the `k`th page of three-dimensional array `A`. `A(i,j,k,:)` is a vector in four-dimensional array `A`. The vector includes `A(i,j,k,1)`, `A(i,j,k,2)`, `A(i,j,k,3)`, and so on. `A(:)` is all the elements of `A`, regarded as a single column. On the left side of an assignment statement, `A(:)` fills `A`, preserving its shape from before. In this case, the right side must contain the same number of elements as `A`.

When you create a vector to index into a cell array or structure array (such as `cellName{:}` or `structName(:).fieldName`), MATLAB returns multiple outputs in a comma-separated list. For more information, see How to Use the Comma-Separated Lists in the MATLAB Programming Fundamentals documentation.

## Examples

Using the colon with integers,

`D = 1:4`

results in

```D = 1 2 3 4```

Using two colons to create a vector with arbitrary real increments between the elements,

`E = 0:.1:.5`

results in

```E = 0 0.1000 0.2000 0.3000 0.4000 0.5000```

The command

`A(:,:,2) = pascal(3)`

generates a three-dimensional array whose first page is all zeros.

```A(:,:,1) = 0 0 0 0 0 0 0 0 0 A(:,:,2) = 1 1 1 1 2 3 1 3 6```

Using a colon with characters to iterate a for-loop,

`for x='a':'d',x,end`

results in

```x = a x = b x = c x = d```