對於此示例對象:從陣列卸下MATLAB對象,刪除空數組的空間
classdef TestObject < handle
%UNTITLED Summary of this class goes here
% Detailed explanation goes here
properties
a;
end
methods
end
end
和本實施例中的腳本:
tbarray = TestObject.empty();
for i=1:3
newTestObject=TestObject;
newTestObject.a=i;
if(i==1)
firstTestObject=newTestObject;
end
tbarray(end+1,1)=newTestObject;
end
delete (firstTestObject) ;
這個運行之後tbarray第一位置具有一個空的TestObject。是否可以調整tbarray的大小,刪除空的對象或使用某種刪除呼叫,例如
index=tbarray.remove(firstObject);
tbarray.add(index,laterTestObject);
或tbarray.Replace(firstObject,laterObject);
更新: 我怎麼會找到我想要刪除的對象的數組索引/替換。該示例使用1,但每次可能會有所不同。
謝謝!!!這適用於這個代碼示例,我知道objectToRemove的索引。但在我的情況下,我如何搜索列表中的對象,獲取其索引,然後在該索引處移除/替換。 –