1
我有一個matlab.unittest.constraints單元格數組和值的單元格數組。我想看看這些值是否與約束匹配(分別)。當然,我可以只使用一個FOR循環,如下面的代碼的東西:如何檢查單元數組是否滿足任意數量的matlab.unittest.constraints?
satisfied = zeros(1,argLength);
for i=1:argLength
satisfied(i) = satisfiedBy(cons{i}, val{i});
end;
answer = all(satisfied);
但是知道MATLAB,必須有凝聚所有的成單行的方式,我只是不知道它。我事先比較數組的長度,如果不相等則返回false。
@VPeric如果您正在尋找速度,由於JIT加速,for循環可能會更快。 – 2013-04-08 21:07:42
@EitanT,我認爲簡單的cellfun/arrayfun語句有時會提高速度。特別是當'UniformOutput'設置爲'true'時。但我會在每種情況下測試它。 – yuk 2013-04-08 21:14:36
我不同意速度的小幅增加,JIT在最近的MATLAB版本中超快。我確實同意應該測試。在任何情況下,+1 :) – 2013-04-08 21:16:02