假设我有一个 struct array arr
,其中每个元素都有一堆字段,包括一个名为val
. 我想将每个元素的val
字段增加一些常数,如下所示:
for i = 1:length(arr)
arr(i).val = arr(i).val + 3;
end
这显然有效,但我觉得应该有一种方法可以在一行代码中做到这一点(并且没有 for 循环)。我想出的最好的是两行,需要一个临时变量:
newVals = num2cell([arr.val] + 3);
[arr.val] = deal(newVals{:});
有任何想法吗?谢谢。