2011-11-24 70 views
0

我正在從Android Java移植一個應用程序到iPhone。最好的方式/任何方式來指示鍵入NSMutableArray

在Android中我使用了Lists/ArrayLists很多。

在iPhone上我打算使用NSMutableArray。

是否有任何方法來定義或甚至指示NSMutableArray中的對象的類型。

我知道人們可以放置任何類型的對象,但我想讓它更加明顯透明。

非常感謝

回答

2

我假定你正在尋找目標C.模板模式遺憾的是,它(至少直接)不在目標C可用。

您可能會發現StackOverflow.com有趣的this問題

+0

謝謝,這是一個動態處理它的好方法。 – user387184

3

目前尚不清楚你在問什麼。

如果你只是想明確告訴讀者什麼樣的對象的種類在數組中,只是將其命名爲適當的(你不能在語言級別上付諸實施):

的NSMutableArray * arrayOfMyClasses;

如果,另一方面,你要發現你正在閱讀從數組回來,那麼你可以使用獲得基礎類對象的類型:

[obj class] 

否則容易比較其他類類型:

if ([obj isKindOfClass:[MyClass class]) { ... } 

+0

是的,這就是我問了 - 命名我發現了太多的唯一解決方案。感謝您的確認! – user387184

1

您只能說明一個類型。

for(id obj in _assets) { 
    NSString *className = NSStringFromClass([obj class]); 
    NSLog(@"%@", className); 
} 

數組是有序的任何類型的對象的集合。例如,圖1中數組所包含的對象可以是貓和狗對象的任意組合,如果數組是可變的,則可以添加更多狗 對象。收藏品不一定是同質的。

Collections Programming Topics - Arrays: Ordered Collections