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

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.

回答 (1 件)

Jacob Halbrooks
Jacob Halbrooks 2012 年 3 月 29 日

0 投票

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);

カテゴリ

ヘルプ センター および File ExchangeData Type Conversion についてさらに検索

製品

タグ

タグが未入力です。

質問済み:

2012 年 3 月 29 日

Community Treasure Hunt

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

Start Hunting!

Translated by