MATLAB访问cell数组的数据,大小括号的区别

  cell数组是MATLAB的一种特殊矩阵,或者叫做广义矩阵。矩阵的每个元素可以是任何一种数据类型的常数、常量或者矩阵,所以矩阵的每个的元素叫做cell。和一般的数值矩阵一样,元胞数组的内存空间也是动态分配的。

  通过小括号()里面加下标,访问cell数组中的数据,返回的是对应的cell。

  通过大括号{}里面加下标,访问cell数组中的数据,返回的是对应cell的内容。

  看一下下面的例子就明白了!

a={20,'matlab',ones(2,3)}
a =
[20] 'matlab' [2x3 double]
>> a(3) %查看cell数组a中的第三个cell
ans =
[2x3 double]
>> class(a(3)) %查看cell数组a中第三个cell的类型
ans =
cell
>> a{3} %查看cell数组a中第三个cell的内容
ans =
1 1 1
1 1 1
>> class(a{3}) %查看cell数组a中第三个cell的内容的类型
ans =
double
>> a(3)=[] %删除cell数组a中的第三个cell
a =
[20] 'matlab'
>> a{2}=[] %清空cell数组a中第二个cell的内容,并没有删除
a =
[20] []