主要内容

结肠,:

创建、加下标数组、向量循环迭代

语法

x = j k x = j:我:k (:, n) (m,:) (:) (j, k)

描述

结肠是MATLAB最有用的运营商之一®。它可以创建向量,下标数组,并指定迭代。

例子

x=j:k创建一个unit-spaced向量x与元素[j, j + 1, + 2,…, j + m]在哪里m =修复(k-j)。如果jk都是整数,那么这只是[j, + 1,…, k)

例子

x=j::k创建一个均匀间隔的向量x使用元素之间的增量。向量元素大致相当[j, j + i, j + 2 *我,…,j + m *我]在哪里m =修复((k-j) / i)。然而,如果不是整数,浮点运算在决定中发挥作用结肠包括端点k在向量,k可能不是完全等于j + m *我。如果您指定nonscalar数组,然后MATLAB解释我:k作为(1):我(1):k (1)

x =结肠(j, k)x =结肠(j, k)是交替执行命令的方法吗j: k我:k,但很少使用。这些语法使操作符重载为类。

例子

(:,n),一个(m,:),(:),(j, k)常见的索引表达式是一个矩阵吗一个包含一个冒号。当你使用冒号作为索引下标表达式,如(:,n),包括它作为速记所有数组下标在一个特定的维度。这也是共同创建一个向量和一个冒号索引的目的,如(j, k)。一些索引表达式结合使用结肠,如(:,j, k)

常见的索引表达式包含一个冒号:

  • (:,n)nth列的矩阵一个

  • 一个(m,:)矩阵的行一个

  • (::p)p页三维数组一个

  • (:)重塑了所有元素的一个到一个列向量。这个如果没有影响一个已经是一个列向量。

  • (::)重塑了所有元素的一个到一个二维矩阵。这个如果没有影响一个已经是一个矩阵或向量。

  • (j, k)使用向量j: k指数为一个因此相当于向量[(j)、(j + 1),…(k))

  • (:,j, k)在第一维度包括所有下标但使用向量j: k在第二个维度指数。这返回一个矩阵的列[(:,j)、(:, j + 1),…(:,k)]

例子

全部折叠

创建一个unit-spaced向量的数字1 - 10。冒号运算符使用的默认增量+ 1。

x = 1:10
x =1×101 2 3 4 5 6 7 8 9 10

创建指定值向量盈亏。

创建一个向量的元素增加了0.1。

x = 0:0.1:1
x =1×110 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000 0.7000 0.8000 0.9000 1.0000

创建一个向量的元素由2衰减。

y = 10: 2:0
y =1×610 8 6 4 2 0

研究几种方法可以使用冒号指数矩阵:

创建一个3×3的矩阵。指数第一行。

=魔法(3)
一个=3×38 1 6 3 5 7 4 9 2
:(1)
ans =1×38 1 6

指数第二和第三列。

(:2:3)
ans =3×21 6 5 7 9 2

重塑矩阵列向量。

(:)
ans =9×18 3 4 5 1 9 6 7 2

在的情况下循环,结肠指定循环迭代。

写一个循环,广场的值的数量n在1和4之间。

n = 1:4 n ^ 2结束
ans = 1
ans = 4
ans = 9
ans = 16

输入参数

全部折叠

从矢量值,指定为一个真正的数字标量。如果j < k这样的输出向量非空,j向量的第一个元素。

例子:x = 0:5

例子:x = 0:0.5:5

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|字符|datetime|持续时间

结束矢量值,指定为一个真正的数字标量。k是最后一个值向量中只有当增量线到底土地k。例如,向量0:5包括5最后一个值,但是0:0.3:1不包括最后一个值的值1自增量不与端点。

例子:x = 0:5

例子:x = 0:0.5:5

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|字符|datetime|持续时间

增量向量元素之间,指定为一个真正的数字标量。

例子:x = 0:0.5:5

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|字符|datetime|持续时间

输出参数

全部折叠

均匀间隔的向量,返回一个行向量。如果j > k,然后x = j。k是一个空矩阵。更一般的,语法x = j:我:k返回一个空矩阵时:

  • ,j,或k是一个空输入

  • 我= = 0

  • 我> 0j > k

  • 我< 0j < k

提示

  • 参考页面的描述如何使用:在循环语句的上下文。

  • linspace类似于结肠运营商吗:,但它给直接控制分总是包括端点的数量。兄弟姐妹函数logspace生成对数间隔值。

  • 当您创建一个向量索引数组(如细胞数组或结构cellName{:}structName(:)。字段名以逗号分隔列表),MATLAB返回多个输出。有关更多信息,请参见如何使用逗号分隔列表

扩展功能

版本历史

之前介绍过的R2006a