如何在数组中存储可变长度字符串,以便可以使用行的数组索引访问它们?我希望它是一个列表或表类型结构,使动态输入成为可能。
答案 0 :(得分:1)
您需要使用cell arrays。如果您知道迭代次数,我会预先分配数组:
N = 10;
stringCellArr = cell(1,N); // cell array with 1 row and N columns
for i=1:N
stringCellArr{i} = 'string';
end
或者如果你想在没有预分配的情况下添加字符串:
stringCellArr = {}; // empty cell array
for i=1:10
stringCellArr{end+1} = 'string';
end
如果你想要你可以将该数组转换为字符串数组,这里有一个使用string()函数的2D矩阵示例,实际上你也可以为矢量执行:
// This is a cell array ...
A = {'Mercury','Gemini','Apollo';...
'Skylab','Skylab B','ISS'}
// ... converted to string array ...
strArr = string(A)
// ... and being accessed
str(3,3)
--> will return 'ISS'