主要内容

多级索引访问单元格的部分

此示例展示了访问存储在单元格数组的单元格中的阵列中的数据的技术。

创建一个样本单元格数组。

myNum = [1,2,3];myCell = {“一个”“两个”};myStruct。Field1 = ones(3);myStruct。Field2= 5*ones(5); C = {myNum, 100*myNum; myCell, myStruct}
C =2×2单元格数组{[1 2 3]} {[100 200 300]} {1x2 cell} {1x1 struct}

使用花括号访问特定单元格的完整内容,{}.例如,从包含它的单元格返回一个数字向量。

C {1,2}
ans =1×3100 200 300

通过附加索引访问单元格的部分内容,使用与内容的数据类型匹配的语法。

数值索引用圆括号括起来。例如,C {1}返回1 × 3的数字向量,[1 2 3].使用圆括号访问该向量的第二个元素。

C{1}(1、2)
Ans = 2

将单元格数组下标括在花括号内。例如,C {2,}返回单元格数组,{“一”,“两个”}.使用花括号访问该单元格数组中的第二个单元格的内容。

C {1}, {1,2}
Ans = ' 2 '

使用点表示法引用结构数组的字段,并按照数值数组和单元格数组的描述将其索引到数组中。例如,C {2,}返回一个结构数组,其中Field2包含一个5乘5的数字数组。使用点符号和圆括号访问该字段的第五行和第一列中的元素。

C {2,} .Field2(5、1)
Ans = 5

可以嵌套任意数量的单元格和结构数组。例如,将嵌套单元格和结构添加到C

C{2,1}{2,2} = {pi, eps};C{2,}。Field3 = struct(“NestedField1”,兰德(3),...“NestedField2”魔法(4),...“NestedField3”{{“文本”“更多的文本”}});

使用大括号、圆括号或点表示法访问新数据的部分。

copy_pi = C{2,1}{2,2}{1,1}
Copy_pi = 3.1416
part_magic = C{2,2}.Field3.NestedField2(1:2,1:2)
part_magic =2×216 2 5 11
nested_cell = C{2,2}.Field3.NestedField3{2,1}
Nested_cell = '更多文本'

相关的话题