filter an array of objects based on the value of a string property
5 次查看(过去 30 天)
显示 更早的评论
Hi, if I have a class "Trade" with a property "Type".
Is there a way to easily filter an array of Trade objects based on say Type == "Cash"
I can filter on booleans easily, I just can't figure out strings.
Thanks for any help,
Tom.
0 个评论
回答(1 个)
Jacob Halbrooks
2012-3-29
You can create a logical mask using ARRAYFUN, where you execute a function on each object that returns true if the object is the desired type. You can then use that logical mask to return the desired objects. For example, assume that you have an array of objects "objArr" and you want to get the objects of Type "Cash". Then execute:
mask = arrayfun(@(x)strcmp(x.Type, 'Cash'), objArr);
objTypeCashArr = objArr(mask);
0 个评论
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!