2012-11-22 33 views
0
列表

可能重複:
Get an object attributes list in Objective-C讓所有對象屬性

我試圖找到一種方法,通過一個對象所有的屬性進行迭代,並指定第一個非空屬性的值給另一個變量。所有這些屬性都是字符串,我試圖使用isEqualToString:@「」在將第一個非空元素指定給另一個變量之前手動檢查每個屬性。有沒有辦法通過遍歷每個屬性而不是有條件檢查每個屬性單獨有效地做到這一點?

+0

你想要序列化或複製對象? – vikingosegundo

回答

1

朱塞佩的回答是不錯的,但似乎你並不需要自己與複雜化。

如果說所有的propertys都是字符串,爲什麼不使用一個NSArray並使用快速列舉,檢查字符串數組中,如果不只是添加它。這樣你就沒有限制(如果你以後需要修改項目)。

此外,即使對於不同類型的變量/特性,也可以工作。當你循環訪問數組時,只需使用isSubclassOfClass:來檢查類型。