Matlab中经常会用到括号去引用某Array或者是cell的内容,但三者有什么具体区别呢? [ ] 中括号用来构建向量(Vectors)或者是矩阵(Matrices)。 如[6.9 9.64 sqrt(-1)] 就是一个有三个元素的向量。 [11 12 13; 21 22 23]是一个二乘三的矩阵. 分号(;)用来结束一行。中括号的另一个作用是在函数中,分配输出参数。 { } 大括号,用于cell型的数组的分配或引用。 比如A(2,1) = {[1 2 3; 4 5 6]}, or A{2,2} = ('str') ( ) 小括号,用于引用数组的元素。 如 X(3)就是X的第三个元素。 X([1 2 3])就是X的头三个元素。 算例: A = [ 1 2 3 ]
B = {A A}
结论: “胞元标识(cell Indexing)”:以二维胞元数组A为例,A(2,3)是指A胞元数线中的第2行第3列胞元元素; “胞元内容编址(Content Addressing)”:如A{2,3}是指A胞元数组第2行第3列胞元中所允许存放的内容 Matlab中数组,元庖等的关系如下: