我正在寻找一种合适的方法来创建和初始化具有给定值的单元格数组。我可以想到以下oneliner
val = 'hello';
dim = [2, 4, 6];
arrayfun(@(x) val, zeros(dim), 'UniformOutput', false)
但我感觉很脏。
答案 0 :(得分:4)
如果你想避免arrayfun
,你可以做
C = cell(dim);
C(:) = {val};
或
C = cell(dim);
[C{:}] = deal(val);
答案 1 :(得分:2)
更简单的替代方案:
C = repmat({val}, dim);