filter an array of objects based on the value of a string property

10 Ansichten (letzte 30 Tage)
tombola
tombola am 29 Mär. 2012
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.

Antworten (1)

Jacob Halbrooks
Jacob Halbrooks am 29 Mär. 2012
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);

Tags

Noch keine Tags eingegeben.

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by